![](/img/trans.png)
[英]How to get the path to ringtones “/system/media/audio/ringtones” programmatically in Android?
[英]How to get path of media files in android
我想要通过任何应用程序的共享意图共享的文件路径。 我确实使用代码ShareCompat.IntentReader.from(this).getStream().getPath();
.
但是我没有得到图像、视频和音频文件的路径我得到content://media/external/video/media/40666
,如何获得这种类型文件的真实路径?
如果你想要的只是路径,你可以使用下面的代码
public String getRealPathFromURI(Context context, Uri contentUri) {
Cursor cursor = getContentResolver().query(contentUri, null, null, null, null);
cursor.moveToFirst();
String document_id = cursor.getString(0);
document_id = document_id.substring(document_id.lastIndexOf(":")+1);
cursor.close();
cursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,null
, MediaStore.Images.Media._ID + " = ? ", new String[]{document_id}, null);
cursor.moveToFirst();
String path = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA));
cursor.close();
return path;
}
它基本上使用他的 ContentResolver 来获取文件的数据。
您可以更改查询参数以获得您想要的。
或者你可以使用
getContentResolver().openInputStream(uri)
如果你想要整个文件
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.