在Android 4.4(KitKat)中访问新图库之前,我使用此方法在SD卡上获得了真正的路径:
public String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
startManagingCursor(cursor);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
Run Code Online (Sandbox Code Playgroud)
现在,Intent.ACTION_GET_CONTENT返回不同的数据:
之前:
content://media/external/images/media/62
Run Code Online (Sandbox Code Playgroud)
现在:
content://com.android.providers.media.documents/document/image:62
Run Code Online (Sandbox Code Playgroud)
我怎么能设法获得SD卡上的真实路径?