Не удалось получить доступ к изображению из папки загрузки - PullRequest
0 голосов
/ 24 февраля 2020

Я сталкиваюсь со странным сценарием, в котором у меня есть 5 изображений, когда я открыл намерение из приложения link_for_image , поскольку, за исключением изображения, обведенного кружком, я могу найти путь, я получаю ошибку ниже для обведенного кружка изображение, упомянутое в приведенной выше ссылке,

java.io.FileNotFoundException: /storage/emulated/0/Download/edcd36b47bdf6e9e045c72250a8bbd24.jpg

В папке загрузок (при открытии из диспетчера файлов) обведенное изображение недоступно, в чем может быть проблема, вот логи c для получения пути к изображению

 String fileName = getFilePath(context, uri);
 if (fileName != null) {
     return Environment.getExternalStorageDirectory().toString() + "/Download/" + fileName;
 }

 String id = DocumentsContract.getDocumentId(uri);
 if (id.startsWith("raw:")) {
     id = id.replaceFirst("raw:", "");
     File file = new File(id);
     if (file.exists())
         return id;
 }

 final Uri contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"), Long.valueOf(id));
 return getDataColumn(context, contentUri, null, null);

1 Ответ

0 голосов
/ 24 февраля 2020

Изображение, которое вы пытаетесь получить, фактически удалено из вашего хранилища, и ваш mediascanner не знает об этом.

Вы можете решить эту проблему, выполнив следующие действия.

1 - Restart the phone. (*If issue still persist perform `2`)

2 - Clean & clear cache for `Gallary/Photos/File Manager`. 

3 - Perform a `mediascan` programatically.

Пусть Я знаю, если у вас возникли проблемы.

...