Android6.0以后 Google 使用了新的Permission管理逻辑
当targetSdkVersion >=23 区分 实时授权,改变了之前的安装授权
如果你的targetSdkVersion 可以设置成 22及以下,不影响app使用的,可以直接更改。
其实更改targetSdkVersion一般不会影响使用的
不能设置的话,在国内,大部分系统5.0/5.1的系统,不会出现很严重的bug
但部分华为,小米的手机Android版本已经更新上来,需要我们解决这个问题
Android权限管理基础写法
检查
ContextCompat.checkSelfPermission(@NonNull Context context, @NonNull String permission)
申请
ActivityCompat.requestPermissions(final @NonNull Activity activity,final @NonNull String[] permissions, final int requestCode)
响应
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults);}
能力强的可以自己封装权限管理
写成工具类来统一管理
当然我们可以使用已经造好的轮子
Google官方推荐Easypermissions
https://github.com/googlesamples/easypermissions
写法 文章
Rx加成的RxPermissions
https://github.com/tbruyelle/RxPermissions
写法 *****
有插件的PermissionsDispatcher
https://github.com/permissions-dispatcher/PermissionsDispatcher
写法 ******
网友评论