【发布时间】:2020-08-26 08:01:43
【问题描述】:
我正在创建(尝试)一个文件管理器应用程序,我想在主要活动中显示最近的文件(所有类型)。我尝试了许多答案,这些答案只显示了如何只获取一种类型的媒体文件。有什么方法可以获取所有类型的近期媒体文件。
我尝试修改在网上找到的答案,但显示名称为 null。
val projection = arrayOf(
MediaStore.Files.FileColumns._ID,
MediaStore.Files.FileColumns.DISPLAY_NAME,
MediaStore.Files.FileColumns.DATE_ADDED,
MediaStore.Files.FileColumns.SIZE
)
val sortOrder = "${MediaStore.Files.FileColumns.DATE_ADDED} ASC limit 10"
applicationContext.contentResolver.query(
MediaStore.Files.getContentUri(MediaStore.VOLUME_INTERNAL),
projection,
null,
null,
sortOrder
)?.use { cursor ->
Log.e("TAG", ">> " + cursor.count)
val idColumn = cursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns._ID)
val nameColumn = cursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.DISPLAY_NAME)
while (cursor.moveToNext()) {
Log.e("TAG", ">> " + cursor.getLong(idColumn))
Log.e("TAG", ">> " + cursor.getString(nameColumn))
}
}
【问题讨论】:
-
是的。你可以。创建一个包含所有必要的 mimetype 的意图
-
查看link
-
嗨@MdBasha,我不想选择文件,而是想要最近的文件列表,就像我们使用 mediastore 一样。
-
您的问题表明您有显示一种最近的媒体文件的解决方案。获取使用 mimetypes 修改的代码以显示所有类型或生成最小可重现代码
-
嗨@MdBasha,检查我更新的问题。
标签: android