android - MediaStore 显示从文件管理器删除后的图像

标签 android android-studio mediastore

我使用 MediaStore 从 Android 设备获取所有图像。然后我从文件管理器中删除了一些图像。接下来我再次使用 MediaStore 来获取图像,并且我得到了所有已删除的文件,这是有问题的。

为什么 MediaStore 返回设备上不再存在的文件(已从设备中删除)?

我用来从 MediaStore 检索图像的代码。

Uri uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;

String[] projection = {MediaStore.MediaColumns.DATA, MediaStore.Images.Media.BUCKET_DISPLAY_NAME};

Cursor cursor = activity.getContentResolver().query(uri, projection, null, null, MediaStore.MediaColumns.DATE_ADDED + " DESC");

String ImagePath = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA));

帮助解决此问题。

最佳答案

Why MediaStore returns files that are no longer are on the device(Deleted from device) ?

因为您使用的任何文件管理器都没有执行任何操作来通知MediaStore有关文件删除的信息。 MediaStore 最终会发现的,但可能需要几个小时。

关于android - MediaStore 显示从文件管理器删除后的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40106667/

相关文章:

安卓媒体商店 : How to efficiently retrieve all songs of a certain genre?

android - 我如何告诉 android 启动器重新加载它的图标?

android - React Native Camera 导致 gradle 构建错误

android - 为什么 Android Studio 找不到我的资源?

java - Android Studio 中缺少向 androidX 的迁移

android - 无法在适用于 OS X Yosemite 的 Android Studio 中运行模拟器

android - 如何从选定的 mp3 文件中提取信息?

android - 向 RecyclerView ListAdapter 提交新列表时,差异检查始终为 areContentsTheSame() 返回 true

java - 如何让 Sprite 在屏幕两侧反弹

android - 查询 MediaStore : Joining thumbnails and images (on ID)