代码之家  ›  专栏  ›  技术社区  ›  Adam Varhegyi

我应该在运行时问哪些权限,在Android中我不需要问哪些权限?

  •  0
  • Adam Varhegyi  · 技术社区  · 9 年前

    我如何确定在运行时应该询问哪些权限,以及哪一个权限“足够”在清单中声明?

    4 回复  |  直到 9 年前
        1
  •  4
  •   Community Mohan Dere    6 年前

    the documentation :

    系统权限分为两类, 典型的 和 危险的

    • 正常权限不会直接危及用户的隐私。如果您的应用程序在其清单中列出了正常权限,则系统会自动授予该权限。

    • 危险权限可以让应用程序访问用户的机密数据。如果您的应用程序在其清单中列出了正常权限,则系统会自动授予该权限。如果你列出了一个危险的权限,用户必须明确批准你的应用程序。

    请参阅上的文档 normal permissions 和 dangerous permissions 了解更多详细信息。

        2
  •  0
  •   shmakova    9 年前

    危险权限应该在运行时询问,在清单中足够正常。您可以看到的危险和正常权限列表 here .

    从…起 docs :

    系统权限分为几个保护级别。两个 需要了解的最重要的保护级别是正常和 危险权限:

    正常权限涵盖应用程序需要访问数据或 应用程序沙箱之外的资源,但资源很少 对用户隐私或其他应用程序操作的风险。对于 应用程序声明它需要正常权限,系统 自动授予应用程序权限。完整列表 当前正常权限,请参阅正常权限。

    危险的 权限涵盖应用程序需要数据或资源的区域 涉及用户的私人信息,或可能影响 用户存储的数据或其他应用程序的操作。例如 读取用户联系人的能力是一种危险的权限。如果 应用程序声明需要危险权限,用户必须 明确授予应用程序权限。那里的特殊权限 危险权限。SYSTEM\u ALERT\u WINDOW和WRITE\u设置为 需要这些权限之一,它必须在 清单,并发送意图,请求用户授权。这个 系统通过显示详细的管理屏幕来响应意图 给用户。

    有关如何请求这些权限的详细信息,请参阅 SYSTEM\u ALERT\u窗口和WRITE\u设置参考条目。

        3
  •  0
  •   WoogieNoogie    9 年前

    您应该始终将希望访问的每个权限都放在清单中。Android Marshmallow之前的设备无法处理运行时权限,因此,除非您只针对Marshmallow及以上版本,否则这一部分很重要。

    您不需要在运行时询问任何“ Normal Permissions 。只有指定为“危险”的权限不会自动授予。

        4
  •  0
  •   Nabin Bhandari    9 年前

    如果你的目标是安卓棉花糖和更高版本,你必须在运行时请求危险的权限。你可以找到列表 here . 你还应该阅读 this