【问题标题】:In Which folders media store goes to collect files?媒体存储在哪些文件夹中收集文件?
【发布时间】:2021-08-29 16:29:25
【问题描述】:

MediaStore 在哪些文件夹中为MediaStore.Files.FileColumns 收集文件?

【问题讨论】:

  • 在文件集合中,您可以找到所有非私人文件。对于其余的问题,您在标题和帖子中的问题不匹配并且很奇怪。

标签: java android android-studio kotlin mediastore


【解决方案1】:

它收集媒体文件存储在默认媒体目录(如图片/或DCIM/)中

我正在使用 CursorLoader 来查询数据库。构造函数的第二个参数需要一个 Uri 参数,这对于媒体类型 Audio、Images 和 Video 来说很容易获得,因为它们中的每一个都为它们定义了一个 EXTERNAL_CONTENT_URI 和 INTERNAL_CONTENT_URI 常量。

ContentResolver cr = context.getContentResolver();
Uri uri = MediaStore.Files.getContentUri("external");

// every column, although that is huge waste, you probably need
// BaseColumns.DATA (the path) only.
String[] projection = null;

// exclude media files, they would be here also.
String selection = MediaStore.Files.FileColumns.MEDIA_TYPE + "="
        + MediaStore.Files.FileColumns.MEDIA_TYPE_NONE;
String[] selectionArgs = null; // there is no ? in selection so null 
here

String sortOrder = null; // unordered
Cursor allNonMediaFiles = cr.query(uri, projection, selection, 
selectionArgs, sortOrder);

【讨论】:

    猜你喜欢
    • 2019-08-29
    • 2011-12-07
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 2020-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多