Uri content://media/external/file не существует для некоторых устройствAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Uri content://media/external/file не существует для некоторых устройств

Сообщение Anonymous »

У меня возникла проблема с некоторыми устройствами. Я не могу воспроизвести это ни на одном устройстве, но у меня есть довольно много отчетов о сбоях, о которых сообщили некоторые пользователи.

Это исключение:

Код: Выделить всё

java.lang.IllegalArgumentException: Unknown URL content://media/external/file
at android.content.ContentResolver.delete(ContentResolver.java:1024)
Я использую это:


context.getContentResolver().delete(MediaStore .Files.getContentUri("external"),
MediaStore.Files.FileColumns.DATA + "=?", new String[] {path });


После этого я вызываю MediaScannerConnection.scanFile() в родительском каталоге файла, потому что, по моему мнению, это наиболее функциональный способ уведомить MediaScanner об удалении файла и о том, как обновить содержимое MTP. Я пробовал все другие способы, которые нашел здесь, в stackoverflow (например, Android, как использовать файл сканирования MediaScannerConnection), но ничего не работает так хорошо, как этот.

Кстати. Я использую его только для API 11 и новее. Внешний накопитель конечно подключен.

У меня такие вопросы:
1. Знаете ли вы какую-либо причину, по которой возникает это исключение? Я не хочу просто игнорировать исключение. И я не хочу удалять этот код, хотя он вполне хорошо работает для большинства устройств.
2. Знаете ли вы какой-нибудь новый надежный метод, как уведомить MediaScanner и как немедленно обновить содержимое MTP при удалении какого-либо файла?

Подробнее здесь: https://stackoverflow.com/questions/214 ... me-devices
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»