1 受保护的权限
Android 6.0中,某些权限属于受保护的权限,例如:读写手机存储权限,仅仅在AndroidManifest.xml中申明是无法真正获取到权限的,访问手机存储时,会报出类似下面的错误:java.io.FileNotFoundException:*** (Permission denied)。
解决方法一
// 动态获取权限,Android 6.0 新特性,一些保护权限,除了要在AndroidManifest中声明权限,还要使用如下代码动态获取
if (Build.VERSION.SDK_INT >= 23) {
int REQUEST_CODE_CONTACT = 101;
String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
for (String permission : permissions) {
if (this.checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) {
// 申请权限(居然不会阻塞下面的程序的)
this.requestPermissions(permissions, REQUEST_CODE_CONTACT);
}
}
}
解决方法二
直接在6.0的设置里面找到应用,选中你的APP->权限->打开存储空间权限。