【问题标题】:Integrate new permission in android marshmallow在 android marshmallow 中集成新权限
【发布时间】:2015-11-16 09:19:02
【问题描述】:

众所周知,在 api 级别 23(Android Marshmallow)中进行了一些更改,其中我们必须在运行时请求一些处于危险级别的权限,例如相机、读/写外部存储等。有没有如何从 AndroidManifest 文件中获取粒度权限?

【问题讨论】:

  • 什么是粒度权限?
  • 我在 Q 中提到的处于危险级别的权限。
  • 您需要自己处理所有权限。您需要根据此考虑所有可能性和代码。
  • 试试这个可能有用stackoverflow.com/a/41221852/5488468

标签: android android-6.0-marshmallow


【解决方案1】:

Android Marshmallow 引入了全新的应用程序权限,用户现在可以随时撤销运行时权限。这意味着您不能假设应用程序有权访问该权限,即使之前已授予该权限。您可以参考此lib 或此guide。希望对您有所帮助。

【讨论】:

    【解决方案2】:

    1) 您可以使用 android api 函数获取应用中提供的所有权限。

    2)然后你可以制作一个危险权限的常量 HashMap(我猜你称之为粒度)。

    3) 当您将获得应用程序的所有权限时,只需单独比较每个权限是否存在于危险权限 HashMap 中。

    快乐编码:)

    【讨论】:

      【解决方案3】:

      请求许可非常单调。每次使用时都必须检查权限。为简单起见,您可以使用 PermissionAcceptor-master 库。

      几乎所有的权限都包含在这个库中。

      您必须使用 PermissionAcceptor-master 库添加几行代码,例如

      new PermissionRequest(MainActivity.this,
              Permission.PERMISSION_CAMERA,
              PermissionCode.CODE_PERMISSION_CAMERA,
              R.string.permission_camera_rationale,
              R.string.permission_camera_denied,
              R.string.permission_enable_message, this)
              .checkPermission();
      

      欲了解更多信息,请访问PermissionAcceptor-master

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-07-15
        • 1970-01-01
        • 1970-01-01
        • 2016-11-09
        • 2016-03-11
        • 1970-01-01
        相关资源
        最近更新 更多