【发布时间】:2020-03-02 16:32:18
【问题描述】:
我正在尝试获取库中视频的路径,但 URI 给了我类似“/document/video:xxxx”的内容。当我使用 getPath() 时,我总是为空。
我设置了 FileProvider 并授予了所有权限,但没有任何效果。
//Start intent
Intent intent = new Intent();
intent.setType("video/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Video"), 1);
//Turn URI to Path
String getPath(Uri uri) {
String[] projection = { MediaStore.Video.Media.DATA };
Cursor cursor = getContentResolver().query(uri, projection, null, null, null);
if (cursor != null) {
// HERE YOU WILL GET A NULLPOINTER IF CURSOR IS NULL. THIS CAN BE, IF YOU USED OI FILE MANAGER FOR PICKING THE MEDIA
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
} else {
return null;
}
}
【问题讨论】:
-
您的帖子主题与您帖子中描述的问题无关。请适应。