解决方法如下:
// 检查是否已经获取了读取外部存储器的权限
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {
// 请求权限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
} else {
// 已经有权限,执行相应操作
// TODO: 执行图片操作的代码
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
switch (requestCode) {
case 1:
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 用户授予了权限,执行相应操作
// TODO: 执行图片操作的代码
} else {
// 用户拒绝了权限,可以给出相应提示或者禁止相关功能
}
break;
}
}
以上代码示例演示了如何在安卓应用中请求并处理读取外部存储器的权限。在实际使用中,你可以根据具体的需求修改代码,比如在权限被拒绝时给出提示信息或者禁止相关功能的使用。
上一篇:安卓近距离传感器
下一篇:安卓禁止访问相册权限管理