Android 8.0及以上版本权限政策更新的优势有哪些?
Android 8.0 (API Level 26) 权限政策关键调整详解
如果你正在适配Android 8.0及以上版本的权限逻辑,这个核心变化一定要吃透:
Android 8.0之前的不合理行为:
在API Level 26之前,当应用在运行时申请某一权限并获得用户授权后,系统会出现一个bug级的逻辑——它会自动授予该应用同一权限组中所有已在AndroidManifest.xml里注册的权限。举个例子:你只主动申请了READ_CONTACTS,但manifest里还注册了WRITE_CONTACTS,系统会直接把写权限也同步给你,哪怕你压根没提这个申请。Android 8.0的修正逻辑:
针对以API Level 26为目标版本(targetSdkVersion >= 26)开发的应用,这个问题被彻底修复了。现在系统只会严格授予你明确在运行时申请的那项权限,同一权限组里其他注册过但没主动申请的权限,不会再被自动授予。
不过有个例外规则要记住:一旦用户已经给你的应用授予了某权限组里的任意一项权限,之后你再申请同组里的其他权限时,系统会自动通过授权,不会再弹出请求用户确认的对话框——这个设计是为了避免重复打扰用户。
内容的提问来源于stack exchange,提问作者cagryInside
相关产品推荐
相关产品推荐

