从URI / external / video / media加载游标时发现的Android不存在的文件

时间:2015-04-22 03:28:04

标签: android android-cursorloader

大家好我正在开发一款Android视频分享应用。我需要从设备加载视频文件并在GridView中显示缩略图。我是这样做的,使用Cursor。下面的代码工作正常,但我经常发现光标返回的不存在的视频文件出现了。这些通常是我之前删除的视频文件。重新启动设备后,它们将消失。

我在谷歌的照片应用中发现了同样的问题,即带有Google+应用的应用。同样的行为。

我知道我可以将String [] where和String [] args放在CursorLoader的构造函数中,但我不知道如何检查查询中是否存在给定的文件路径。

有没有人遇到过同样的情况?谢谢你的帮助。

String[] projection = {
            MediaStore.Video.Media._ID,
            MediaStore.Video.Media.DATA,
            MediaStore.Video.Media.DISPLAY_NAME,
            MediaStore.Video.Media.SIZE,
            MediaStore.Video.Media.LONGITUDE,
            MediaStore.Video.Media.LATITUDE,
            MediaStore.Video.Media.DURATION,
            MediaStore.Files.FileColumns.DATE_ADDED
    };

    Cursor videoCursor = new CursorLoader(getActivity(), MediaStore.Video.Media.EXTERNAL_CONTENT_URI, projection,
            null, null, MediaStore.Files.FileColumns.DATE_ADDED + " DESC"
            ).loadInBackground();

0 个答案:

没有答案