[英]Which permissions should I ask at runtime and which I don't have to ask runtime in Android?
我如何确定应该在运行时询问哪些权限以及哪个权限“足以”在清单中声明?
危险权限应该在运行时询问,在清单中足够正常。 您可以在此处查看危险和正常权限的列表。
从文档:
系统权限分为几个保护级别。 要了解的两个最重要的保护级别是正常权限和危险权限:
普通权限涵盖您的应用程序需要访问应用程序沙箱之外的数据或资源的区域,但对用户隐私或其他应用程序的操作风险很小的区域。 比如设置时区的权限就是普通权限。 如果应用程序声明需要普通权限,系统会自动授予该应用程序权限。 有关当前普通权限的完整列表,请参阅普通权限。
危险权限涵盖应用程序想要的数据或资源涉及用户隐私信息的区域,或可能影响用户存储的数据或其他应用程序的操作的区域。 例如,读取用户联系人的能力是一种危险的权限。 如果应用程序声明它需要危险权限,则用户必须明确授予应用程序权限。 特殊权限 有一些权限与正常权限和危险权限不同。 SYSTEM_ALERT_WINDOW 和 WRITE_SETTINGS 特别敏感,因此大多数应用程序不应使用它们。 如果应用程序需要这些权限之一,它必须在清单中声明该权限,并发送请求用户授权的意图。 系统通过向用户显示详细的管理屏幕来响应意图。
有关如何请求这些权限的详细信息,请参阅 SYSTEM_ALERT_WINDOW 和 WRITE_SETTINGS 参考条目。
您应该始终将您想要访问的所有权限放在清单中。 Android Marshmallow 之前的设备无法处理运行时权限,因此除非您仅针对 Marshmallow 及更高版本,否则这部分很重要。
您不需要在运行时询问任何“ 正常权限”。 只有指定为“危险”的权限不会自动授予。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.