Marshmallow permission implementation

2019-01-14 22:03发布

I am trying to add Android 6.0 support in my Existing Android App. I have used SYNCADAPTER to sync data. its working fine till API 22. but in 23 (ANDROID 6.0) they have remove Group permission AUTHENTICATE_ACCOUNTS.

I found sample how to get run-time permission, I tried same with AUTHENTICATE_ACCOUNTS but it is not working.

I also found one answer, Is there any trick to use AUTHENTICATE_ACCOUNTS same as that answer?

i found removed permissions list overhere. so if my app use that permission which is listed. in that case does any app works in Android M (6.0)?

2条回答
Fickle 薄情
2楼-- · 2019-01-14 22:32

AUTHENTICATE_ACCOUNTS this permission no exist any more, as google project manager said.

Issue 2592: Requesting AUTHENTICATE_ACCOUNTS permission prompts to: 'Allow app to perform an unknown action'

We'll have to wait for a future preview revision to pursue this because the M revision 2 'key changes' section states: "Some accounts and identity permissions are moved to CONTACTS permissions group and others are removed or granted based on account type. In particular, android.permission.USE_CREDENTIALS, android.permission.MANAGE_ACCOUNTS, and android.permission.AUTHENTICATE_ACCOUNTS are ungrouped pending further changes in a later release." http://developer.android.com/preview/support.html

查看更多
3楼-- · 2019-01-14 22:34

There is no longer need AUTHENTICATE_ACCOUNTS on Android 6.0.

you can use android:maxSdkVersion="22" on your uses-permission element to stop requesting it as of Android 6.0.

As mentioned in comment by CommonsWare Sir and this blog helped to understand more on this issue.

查看更多
登录 后发表回答