![](/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.