请参阅http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html
我正在尝试最后三种方法从Uri获取缩略图。
但是Cursor仍为null。请帮忙怎么用?基本上我想从存储在SD卡上的图像中获得微型缩略图(由android生成)。
Cursor cursor = MediaStore.Images.Thumbnails.query(getContentResolver(),
Uri.parse("file://" + "/mnt/sdcard/DCIM/Camera/IMG_20110722_101000.jpg"), null);
if (cursor != null) {
Log.d("sf","Sfsfs");
}
还尝试了以下一个:
Cursor cursor = MediaStore.Images.Thumbnails.queryMiniThumbnails(getContentResolver(),
Uri.parse("file://" + "/mnt/sdcard/DCIM/Camera/IMG_20110722_101000.jpg"), MediaStore.Images.Thumbnails.MICRO_KIND, null);
if (cursor != null) {
Log.d("sf","Sfsfs");
}
我没有尝试任何需要long origId
作为参数的方法,因为我只有路径而非ID。
答案 0 :(得分:0)
查询ContentResolver以获取缩略图
Cursor thumbnails = contentResolver.query(Thumbnails.EXTERNAL_CONTENT_URI, null, Thumbnails.IMAGE_ID + "=?", new String[]{String.valueOf(photoId)}, null);
你可以从它的URI获取photoId,从文件名中获取URI只需创建文件并从中解析URI
Uri uri = Uri.fromFile(file);
答案 1 :(得分:-4)
好吧,你应该在查询后调用cursor.moveToNext()
。