Android应用中怎么获取判断处理权限

  介绍

这篇文章给大家介绍Android应用中怎么获取判断处理权限,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

主要用到的几个方法:

//检查权限   int checkSelfPermission(字符串)//申请权限   空白requestPermissions (int,弦…)//是否应该显示请求权限的说明   布尔shouldShowRequestPermissionRationale(字符串)//处理权限结果回调   空白> PackageManager.PERMISSION_DENIED:拒绝了。      PackageManager.PERMISSION_GRANTED:授权了

上述四个方法中,前三个方法在support-v4的ActivityCompat中都有,建议使用兼容库中的方法。最后一个方法是用户授权或者拒绝某个权限组时系统会回调活动或者片段中的方法。

<强> 1。checkSelfPermission (String)

检查权限

1。检查某一个权限的当前状态,你应该在请求某个权限时检查这个权限是否已经被用户授权,已经授权的权限重复申请可能会让用户产生厌烦。

2。该方法有一个参数是权限名称,有一个int的返回值,用这个值与上面提到的两个常量做比较可判断检查的权限当前的状态。

。Manifest.permission.READ_CONTACTS checkSelfPermission(上下文)
  !=PackageManager.PERMISSION_GRANTED) {//没有权限,可以在这里重新申请权限。
  其他}{//有权限了。
  }

<强> 2。requestPermissions (int,字符串…)

申请权限

请求用户授权几个权限,调用后系统会显示一个请求用户授权的提示对话框,程序不能配置和修改这个对话框,如果需要提示用户这个权限相关的信息或说明,需要在调用requestPermissions()之前处理

该方法有两个参数:

会在回调onRequestPermissionsResult()时返回,用来判断是哪个授权申请的回调。

权限数组,你需要申请的的权限的数组。

由于该方法是异步的,所以无返回值,当用户处理完授权操作时,会回调活动或者片段的onRequestPermissionsResult()方法。

ActivityCompat。requestPermissions(活动,新String [] {Manifest.permission。READ_CONTACTS},嗯);

<强> 3> @Override   如果(ContextCompat公共空间>。checkSelfPermission(这个,Manifest.permission.READ_CONTACTS) !=PackageManager.PERMISSION_GRANTED){//没有权限。   如果(ActivityCompat。shouldShowRequestPermissionRationale(这个,Manifest.permission.READ_CONTACTS)) {//用户拒绝过这个权限了,应该提示用户,为什么需要这个权限。   其他}{//申请授权。   ActivityCompat。requestPermissions (thisActivity新String [] {Manifest.permission。READ_CONTACTS},嗯);   }   }   …   @Override   公共空间>关于Android应用中怎么获取判断处理权限就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

Android应用中怎么获取判断处理权限