安卓相册图片获取真实路径
时间: 2023-03-20 16:03:30 浏览: 93
在安卓中,获取图片的真实路径可以通过以下步骤实现:
1. 使用图片选择器或者拍照功能获取图片的URI(Uniform Resource Identifier)对象。
```java
Uri imageUri = data.getData();
```
2. 通过URI对象获取图片的真实路径。
```java
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(imageUri, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String imagePath = cursor.getString(columnIndex);
cursor.close();
```
在这段代码中,首先定义了一个 `String` 类型的数组 `filePathColumn`,数组的元素是 `MediaStore.Images.Media.DATA`,表示要查询的列是图片的真实路径。然后调用 `getContentResolver().query()` 方法查询图片的真实路径,传入的参数包括图片的URI对象、要查询的列、查询条件、查询条件参数、以及排序方式。查询结果是一个 `Cursor` 对象,然后调用 `cursor.moveToFirst()` 方法将光标移到第一行,再调用 `cursor.getColumnIndex()` 方法获取真实路径的列索引,最后调用 `cursor.getString()` 方法获取图片的真实路径。最后一步是关闭 `Cursor` 对象,释放资源。
需要注意的是,通过URI获取图片真实路径的方式在不同的安卓版本中可能会有差异,需要根据实际情况进行调整。