使用 MediaStore.Images 和 contentResolver 获取存储在设备上的图像时,“没有 content://media/external/images/media/0 条目”

use*_*549 5 android mediastore android-contentresolver

我有一个非常基本的要求。我需要从我可以使用的设备相机中获取的最后一张图像(及其缩略图)。

我使用以下代码来获取图像缩略图:

String[] projection={MediaStore.Images.Thumbnails._ID,MediaStore.Images.Thumbnails.IMAGE_ID,
MediaStore.Images.Thumbnails.KIND,MediaStore.Images.Thumbnails.DATA};

Cursor cursor=MediaStore.Images.Thumbnails.queryMiniThumbnails(getContentResolver(),MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, MediaStore.Images.Thumbnails.MINI_KIND, projection);
Run Code Online (Sandbox Code Playgroud)

以下是实际图像:

String[] largeimage_projection={MediaStore.Images.ImageColumns._ID,MediaStore.Images.ImageColumns.DATA,};

String largeFileSort=MediaStore.Images.ImageColumns._ID+" DESC";

Cursor cursor=getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, largeimage_projection, null, null, sort);
Run Code Online (Sandbox Code Playgroud)

但是,在我的 Samsung Galaxy Tab 8.9 上运行该应用程序时,出现以下错误:

对于缩略图:

没有内容条目://media/external/images/Thumnails/0

对于图像:

内容无条目://media/external/images/media/0

在检查设备时,我发现图像的默认位置是“/mnt/sdcard/DCIM/Camera/”

此外,我无法使用 onActivityResult() 方法中返回的“intent.getExtras()”,因为我的选项卡总是将其设为 null。

谁能告诉我我哪里出错了?谢谢。