У меня есть строковый URL-адрес, указывающий на изображение, хранящееся на внешней памяти моего устройства:
String imageUrl = "/storage/emulated/0/DCIM/100MEDIA/IMAG0823.jpg"
Я хочу получить запрос MediaStore
, чтобы получить эскиз для этого изображения. Это то, что я делаю прямо сейчас:
private String getImageThumbnailPath(Context ctx, String imageUrl){
Cursor cursor = MediaStore.Images.Thumbnails.queryMiniThumbnails(
ctx.getContentResolver(), Uri.fromFile(new File(imageUrl)),
MediaStore.Images.Thumbnails.MICRO_KIND,
null);
String url = "";
if( cursor != null && cursor.getCount() > 0 ) {
cursor.moveToFirst();
url = cursor.getString( cursor.getColumnIndex( MediaStore.Images.Thumbnails.DATA ) );
cursor.close();
}
return url;
}
Однако вызов этого метода и его печать не показывают ничего (курсор пуст).
Как запросить MediaStore
для URL-адреса эскиза, связанного с моим URL-адресом изображения?
Edit
Я также попытался разобрать Uri прямо из URL-адреса изображения, так:
Cursor cursor = MediaStore.Images.Thumbnails.queryMiniThumbnails(
ctx.getContentResolver(), Uri.parse(imageUrl),
MediaStore.Images.Thumbnails.MINI_KIND,
null);
Но результат тот же.