首先,我们必须知道一点就是:
在Android6.0以后,一些保护权限,除了要在AndroidManifest中声明权限,还要使用如下代码,在运行时进行权限动态检测:
需要注意的是,一下权限都需要在运行时判断:
身体传感器
日历
摄像头
通讯录
地理位置
麦克风
电话
短信
存储空间
以一个例子为例:
private void checkPermission(){
if(Build.VERSION.SDK_INT>=23){
int REQUEST_CODE_CONTACT=101;
//所申请的权限
String[] permission={Manifest.permission.WRITE_EXTERNAL_STORAGE};
//验证是否许可权限
for(String str:permission){
if(this.checkSelfPermission(str)!= PackageManager.PERMISSION_GRANTED){
//然后开始申请权限
this.requestPermissions(permission,REQUEST_CODE_CONTACT);
return;
}
}
}
}