Android之动态权限申请 刺骨的言语ヽ痛彻心扉 2022-02-04 12:41 255阅读 0赞 Android6.0(Api 23)之前的应用权限会再安装的时候被授予,运行的时候不再需要询问客户。 再Android6.0之后或更高的版本对权限进行了分类,对某些涉及到用户隐私安全的权限需要在运行的时候询问客户,这样就不需要在安装时强迫用户授予某些权限了。 android系统对所有的权限进行了分组,称为权限组,权限组又包含很多权限,这里我就不再一一列举了,有需要的小伙伴可以查看一下别家大佬的博客。 Android 6.0以上设备,并且应用targetSdkVersion是23或更高版本,则针对在AndroidMainfest.xml 中声明的危险权限,在运行的时候还需要动态请求用户授权。 主要的代码如下 1.检查权限 ContextCompat.checkSelfPermission(Context context,String permission); 返回值: 有权限:PackageManager.PERMISSION\_GRANTED 无权限:PackageManager.PERMISSON)DENIED 2.解释权限 判断是否有必要向用户解释为什么要这项权限 ActivityCompat.shouldShowRequestPermissonRationale(Activity activity,String permission); 3.请求权限 当检测到应用没有指定权限的时候,调用此方法向用户申请权限 ActivityCompat.requestPermissons(Activity activity,String[] permissions,int requestCode); 4.处理结果 请求权限的结果返回和接收一个Activity的返回类似,重写FragmentActivity或Fragment中的onRequestPermissionResult(…)方法 public void onRequestPermissionResult(int requestCode,String[] permissions,int[] grantResults){ }
还没有评论,来说两句吧...