Медиа-сканер не принимает изображения на определенных устройствах
У меня есть приложение, которое сохраняет изображения в каталог на SD-карте, который я затем хочу, чтобы MediaScanner забрал их, чтобы они отображались в галерее / библиотеке фотографий на устройстве.
Моя проблема
Мое текущее решение работает корректно на Galaxy S3, Galaxy Ace и Sony Xperia U. На чем оно не работает, так это на HTC Hero.
Единственный способ обновить содержимое - перезапустить устройство, когда другие устройства его подберут, когда оно будет добавлено, из-за того, что я добавил его в распознаватель содержимого. Мой код показан ниже.
ContentResolver cr = MyApplication.getAppContext().getContentResolver();
ContentValues values = new ContentValues();
values.put(Images.Media.TITLE,fileName);
values.put(Images.Media.DISPLAY_NAME,photoName);
values.put(Images.Media.DATE_TAKEN, currentPhoto.getTimestamp());
values.put(Images.Media.MIME_TYPE, "image/jpeg");
values.put(Images.Media.ORIENTATION, rotation);
values.put(Images.Media.LATITUDE,currentPhoto.getLatitude());
values.put(Images.Media.LONGITUDE, currentPhoto.getLongitude());
values.put(Images.Media.DATA,MainActivity.APP_GALLERY_STORAGE_PATH+File.separator+fileName);
cr.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
Мой вопрос
Как принудительно выполнить повторное сканирование или обновление MediaScanner, чтобы вновь добавленные изображения в этот каталог отображались в Фотогалерее HTC Hero без перезагрузки устройства?
заранее спасибо
1 ответ
У меня была такая же проблема для устройств Huawei. Попробуйте добавить
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
к манифесту. Это сработало для меня!