Как обновить Android MediaStore после удаления фотографии
Вопрос: как заставить хранилище мультимедиа обновить свою запись в файле DELETED?
После удаления фотографии в коде из внешнего хранилища я все еще вижу в галерее слот для удаленной фотографии - пустую фотографию.
Кажется, что галерея отражает хранилище мультимедиа, а удаленная фотография находится в хранилище мультимедиа до тех пор, пока телефон не будет перезагружен или вообще - до повторного сканирования мультимедиа.
Попытка сканирования удаленного файла сделалане помочь сканировать удаленные файлы (работает только для новых или существующих файлов):MediaScannerConnection.scanFile(Application.get(), new String[]{file.getPath()}, null, null)
(Я также пытался сканировать родительскую папку).
Также попробовалACTION_MEDIA_SCANNER_SCAN_FILE
но безрезультатно. Пример:Application.get().sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(file)))
Отправка широковещательного приемника для повторного сканирования всего внешнего хранилища (таким образом, обновляя хранилище мультимедиа) сделала свое дело:Application.get().sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.fromFile(Environment.getExternalStorageDirectory())))
НО, похоже, что Android, по состоянию на4,4, выдает исключение безопасности при попытке вручную отправить системную трансляцию ACTION_MEDIA_MOUNTED. Смотрите сообщение @ CommonsWare:http://commonsware.com/blog/2013/11/06/android-4p4-permission-regressions.html
Итак, я застрял без решения по обновлению хранилища мультимедиа после удаления файла (/ photo / video / etc.).