我想知道是否可以直接获取android MINI_KIND缩略图的字节数组(获取位图然后编码它会起作用,但我想直接得到它。)
来自Android的API http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html
看起来我们只能获取Bitmap。但希望还有另一种方法可以直接获得它。
感谢。
答案 0 :(得分:0)
以下代码适用于我。虽然它对某些图像返回null。
private static String getDeviceThumbnailUri(String sImagePath, Context context){
String[] projection = { MediaStore.Images.Media._ID };
String result = null;
Cursor cursor = context.getContentResolver().query(MediaStore.Images.Media.getContentUri("external"),
projection, MediaStore.Images.ImageColumns.DATA + " LIKE ?", new String[] { sImagePath }, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID);
cursor.moveToFirst();
long imageId = cursor.getLong(column_index);
cursor.close();
cursor = MediaStore.Images.Thumbnails.queryMiniThumbnail(
context.getContentResolver(), imageId,
MediaStore.Images.Thumbnails.MINI_KIND,
null);
if (cursor != null && cursor.getCount() > 0) {
cursor.moveToFirst();
result = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Thumbnails.DATA));
}
if (cursor!=null) {
cursor.close();
}
return result;
}