MediaStore.AUTHORITY
时间: 2024-02-01 15:03:37 浏览: 30
MediaStore.AUTHORITY是Android中一个常量,用于指定访问MediaProvider的权限。MediaProvider是一个Android系统组件,它提供了访问设备上的图片、音频和视频等多媒体文件的接口。MediaStore.AUTHORITY指定了访问MediaProvider时的URI中的权限部分,它的值通常为"media"。
例如,访问设备上的所有音频文件时,可以使用以下代码:
```
Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
```
在这个URI中,"content://"是URI的协议部分,"media"是权限部分,"audio"是路径部分,"external"是查询条件部分。这个URI将返回设备上所有的外部存储器中的音频文件。
相关问题
String[] projection = {MediaStore.Images.Media._ID, MediaStore.Images.Media.DATA}; String sortOrder = MediaStore.Images.Media._ID + " DESC"; Cursor cursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null, null, sortOrder);
这段代码是查询Android系统中存储的图片信息。其中,`MediaStore.Images.Media._ID`表示图片在媒体库中的唯一标识符,`MediaStore.Images.Media.DATA`表示图片在存储设备上的物理路径。`projection`数组是用来指定查询返回的列,`sortOrder`是用来指定查询结果的排序方式。`getContentResolver().query()`方法执行查询操作,其中`MediaStore.Images.Media.EXTERNAL_CONTENT_URI`表示查询外部存储器中的图片。查询结果会以`Cursor`对象的形式返回。
MediaStore.Files.FileColumns.DATA已过时
是的,`MediaStore.Files.FileColumns.DATA` 已经过时了。从 Android 10 开始,Android 应用程序无法直接访问设备上的外部存储器路径,而是需要使用 `MediaStore` API 或 `Storage Access Framework`(SAF)来访问文件。
以下是使用 `MediaStore` API 获取文件 URI 的示例代码:
```java
String filePath = "/storage/emulated/0/Download/sample.mp3";
Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
String selection = MediaStore.Audio.Media.DISPLAY_NAME + "=?";
String[] selectionArgs = new String[]{new File(filePath).getName()};
String sortOrder = null;
Cursor cursor = getContentResolver().query(uri, null, selection, selectionArgs, sortOrder);
if (cursor != null && cursor.moveToFirst()) {
int id = cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media._ID));
uri = ContentUris.withAppendedId(uri, id);
cursor.close();
}
// 处理 URI
```
在这个示例中,我们首先定义了文件路径 `filePath`。然后,我们调用 `MediaStore.Audio.Media.EXTERNAL_CONTENT_URI` 获取存储在设备上的所有音频文件的 URI。接下来,我们使用查询来获取具有指定文件名的文件的 ID,然后将其附加到音频文件的 URI 上。
请注意,此示例仅适用于获取音频文件的 URI。如果要获取其他类型的文件的 URI,请将 `MediaStore.Audio.Media.EXTERNAL_CONTENT_URI` 替换为适当的 `MediaStore` 内容 URI,并更改查询中使用的列名(例如,使用 `MediaStore.Images.Media.DISPLAY_NAME` 获取图像文件的 URI)。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)