关于Android6.0动态权限的理解
Android6.0动态权限产生原因:
在安卓6.0之前,安装app时候会产生一个权限列表,只有用户允许这些权限后app才能安装成功,但是并不是每一个用户都能理解这些权限究竟是干什么的,为了安装应用只能同意极不安全。所以Android6.0动态权限就出来了,用户可以不用处理权限直接安装,当应用需要调取权限的时候,弹框提示用户这个权限的说明,可以人性化的保护用户的隐私。
一 .6.0权限的分组
1.普通权限
是对手机的一些正常操作,对用户的隐私没有太大影响的权限,比如手机的震动,网络访问,蓝牙等权限,这些权限会在应用被安装的时候默认授予,用户不能拒绝,也不能取消。
2. 危险权限
会威胁到用户的隐私,比如打电话 发信息 。google做了一个权限组 如下图所示
3. 特殊权限
一般不会用到 eg:
系统级别对话框:SYSTEM_ALERT_WINDOW
修改系统设置:WRITE_SETTINGS
二 .关于权限系统变化的适配
谷歌大佬已经帮我们处理了,当你的targetSdkVersion<23的时候,就算运行在Android6.0的系统上,也会默认采取以前的权限管理机制。但当>23的时候就会采取新的权限管理机制 ,进行适配的几个需要记住的API
int checkSelfPermission(String permission) 用来检测应用是否已经具有了权限
void requestPermissions(String[] permissions, int requestCode ) 进行请求单个或多个权限
void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)请求权限结果回调
方法