如何在Android中只使用一个查询检索缩略图和图像文件路径

时间:2014-10-22 00:24:28

标签: android image cursor thumbnails android-contentresolver

我想只用一个查询检索图像和缩略图的文件路径。下面的代码检索缩略图的文件路径:

        final String [] mProjection = {MediaStore.Images.Thumbnails.DATA};
        Cursor imageCursor = getContentResolver().query(
                MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI,
                mProjection,
                null,
                null,
                null
        );
        ArrayList<String> thumbFilePaths = new ArrayList<String>();
        int thumbColumnIndex = imageCursor.getColumnIndex(MediaStore.Images.Thumbnails.DATA);
        Uri thumbUri;

        while(imageCursor.moveToNext()) {
            thumbUri = Uri.parse(imageCursor.getString(thumbColumnIndex));

            thumbFilePaths.add(thumbUri.getPath());
        }
        imageCursor.close();

我可以更改代码以检索图像的文件路径,但我不知道如何更改它以便为所有图像检索图像和缩略图路径。

如果那是不可能的,那么就像在stackoverflow上已经解决的那样,不是将拇指文件路径转换为图像文件路径,而是如果我必须为许多路径执行此操作似乎效率不高,我可以执行两个查询 - 一个用于图像,一个用于拇指,两个查询返回的路径顺序是否相同?即,两个查询返回的第N个路径对应于图像N的图像和缩略图路径。

另外,我刚注意到,几乎所有的缩略图路径都被多次检索,如果有人能指出代码有什么问题,我将不胜感激:)

谢谢你, 加里

0 个答案:

没有答案