请求相册权限代码
时间: 2023-09-22 22:06:34 浏览: 228
以下是请求相册权限的代码示例:
```java
private static final int PERMISSION_REQUEST_CODE = 100;
// 在需要请求相册权限的地方调用该方法
private void requestPermission() {
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, PERMISSION_REQUEST_CODE);
} else {
// 已经获得相册权限,可以进行相应操作
// doSomething();
}
}
// 处理权限请求结果
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == PERMISSION_REQUEST_CODE) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 用户同意授权,可以进行相应操作
// doSomething();
} else {
// 用户拒绝授权,可以提示用户打开权限设置页面手动授权
Toast.makeText(this, "请授予相册权限", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", getPackageName(), null);
intent.setData(uri);
startActivity(intent);
}
}
}
```
在 AndroidManifest.xml 文件中添加相册权限声明:
```xml
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
阅读全文