欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android10 获取视频文件Uri

程序员文章站 2024-02-14 22:50:52
...
private static Uri getVideoContentUri(Context context, File videoFile) {
		String filePath = videoFile.getAbsolutePath();
		Cursor cursor = context.getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
				new String[]{MediaStore.Video.Media._ID}, MediaStore.Video.Media.DATA + "=? ",
				new String[]{filePath}, null);
		if (cursor != null && cursor.moveToFirst()) {
			int id = cursor.getInt(cursor.getColumnIndex(MediaStore.MediaColumns._ID));
			Uri baseUri = Uri.parse("content://media/external/video/media");
			return Uri.withAppendedPath(baseUri, "" + id);
		} else {
			if (videoFile.exists()) {
				ContentValues values = new ContentValues();
				values.put(MediaStore.Video.Media.DATA, filePath);
				return context.getContentResolver().insert(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, values);
			} else {
				return null;
			}
		}
	}

如需获取其他文件Uri,将 MediaStore.Video.Media.XXX 中的 Video 换成 对应文件类型即可。

相关标签: android开发