Android6.0(API级别 23)变更------动态权限

Android6.0除了提供了很多新特性及功能外还引入了新的权限模式、让用户更好的了解和控制权限。在此之前大家都知道添加权限只需要在AndroidManifest文件中申请即可,那么了解下Android6.0的动态权限吧!


  • Android6.0系统权限分为:
    • Normal Permissions(不涉及手机用户隐私、在配置文件 AndroidManifest中申请即可、没什么好说的应该都会)
    • Dangerous Permission(涉及隐私、需要动态添加)想要查看所有Dangerous Permission的权限, 可以用命令:
      adb shell pm list permissions -g -d

下面重点说一下怎么添加Dangerous Permission 的权限。

  1. 首先还是在配置文件AndroidManifest中申请我们所需要的权限。
  2. 判断手机系统版本。如果不是Android6.0以上的版本(包括Android6.0),直接继续下一步操作,反之进行权限申请。

注: 不是Android6.0以上的系统不需要进行以下操作

  1. 检查权限。
    通过ContextCompat.checkSelfPermission() 方法检查用户是否授予该权限;
  2. 返回值为:PERMISSION_GRANTED 说明应用具有此项权限 ,可以继续操作。
  3. 返回值为:PERMISSION_DENIED 说明没有授予应用此项权限,需要向用户请求权限。
  4. 请求权限。
    当应用没有权限的时候通过调用ActivityCompat.requestPermissions(),向用户请求相应权限。
  5. 处理权限请求响应。
    通过onRequestPermissionsResult() 方法处理用户是否允许授予权限。

以上就是我了解的请求动态权限方法,不难理解。

你可能感兴趣的:(android)