gpt4 book ai didi

java - 如何使用媒体存储加载所有图像?

转载 作者:太空宇宙 更新时间:2023-11-04 10:49:07 25 4
gpt4 key购买 nike

我想加载用户设备中存在的所有图像。我知道可以使用媒体存储加载图像,但对我来说最大的缺点是具有 .nomedia 文件的文件夹中存在的图像不能使用媒体存储加载/检索。

是否有一种使用媒体存储或不使用媒体存储的有效方法来加载 Android 设备中存在的所有图像,无论其父文件夹是否包含 .nomedia 文件?

这就是我加载父目录没有 .nomedia 文件的图像的方式:

public void getImages(Context context) {

File Image_File;
final String[] columns = {MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID};

String orderBy = MediaStore.Images.Media.DATE_MODIFIED ;

Cursor cursor = context.getContentResolver().query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns, null,
null, orderBy);

if (cursor != null)
{
cursor.moveToFirst();
final int dataColumnIndex = cursor.getColumnIndex(MediaStore.Images.Media.DATA);

while (cursor.moveToNext()) {
Image_File = new File(cursor.getString(dataColumnIndex));

//Add the Image to the list
}
}

}

我知道我可以扫描每个文件夹并检查其中是否存在图像,但这会消耗大量时间。

最佳答案

MediaStrore 不会扫描包含 .nomedia 文件的目录。

因此您不能要求 MediaStore 交付它们。

您确实必须创建自己的媒体商店。

关于java - 如何使用媒体存储加载所有图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48033470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com