/**
* 获取小于api19时获取相册中图片真正的uri
*
* @param context
* @param uri
* @return
*/
public static String getFilePath_below19(Context context, Uri uri) {
// 这里开始的第二部分,获取图片的路径:低版本的是没问题的,但是sdk>19会获取不到
String[] proj = { MediaStore.Images.Media.DATA };
// 好像是android多媒体数据库的封装接口,具体的看Android文档
Cursor cursor = context.getContentResolver().query(uri, proj, null,
null, null);
// 获得用户选择的图片的索引值
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
// 将光标移至开头 ,这个很重要,不小心很容易引起越界
cursor.moveToFirst();
// 最后根据索引值获取图片路径 结果类似:/mnt/sdcard/DCIM/Camera/IMG_20151124_013332.jpg
String path = cursor.getString(column_index);
if (cursor != null) {
cursor.close();
}
return path;
}
/**
* 获取大于api19时获取相册中图片真正的uri