Android 调用系统相册
时间: 2023-08-03 18:04:54 浏览: 102
在 Android 中,可以使用 Intent 打开系统相册,选择图片并返回选择的图片的 Uri。以下是一个示例代码:
```java
// 打开系统相册
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, REQUEST_IMAGE_SELECT);
// 处理选择结果
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_IMAGE_SELECT && resultCode == RESULT_OK && data != null) {
Uri selectedImageUri = data.getData();
// 处理选择的图片 Uri
}
}
```
在上面的示例代码中,首先使用 `Intent` 打开系统相册。在 `startActivityForResult` 方法中,`REQUEST_IMAGE_SELECT` 是一个自定义的请求码,用于标识返回结果的来源。
当用户选择一张图片并返回应用时,系统会调用 `onActivityResult` 方法。在该方法中,我们可以通过 `data` 参数获取用户选择的图片的 Uri。在示例代码中,`selectedImageUri` 就是用户选择的图片的 Uri。
需要注意的是,在使用 `Intent` 打开系统相册时,需要在 AndroidManifest.xml 文件中添加以下权限:
```xml
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
该权限用于读取系统相册中的图片。
阅读全文