这是Android 6.0系统的新特性,对于我们一些常用的APP,需要调用手机摄像头或者文件存储的时间,我们一般是文件清单加入所需的权限即可,但是对6.0版本之后,就不能这么任性了,我们还有手动去给安装的app去授权某些某些权限,才能正常使用app。
private void init_root() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//如果 API level 是大于等于 23(Android 6.0) 时
//判断是否具有权限
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.CAMERA) != PERMISSION_GRANTED) {
//如果应用之前请求过此权限但用户拒绝了请求,此方法将返回 true。
if (ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
}
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.CAMERA},
0);
}
}
}
只是我参考网上
的一些简单方法,简单实用,而且这里是对摄像头和文件读写的权限授权,如果还有其他的授权,我们可以在
ActivityCompat.requestPermissions的数组添加。如果上面有什么不足的,希望各位大佬,在评论区留言,我
们一起学习交流一下。谢谢。