#android #path #android-glide
#Android #путь #android-glide
Вопрос:
У меня проблема. Я загружаю изображение со своего веб-сайта в Android-приложение с помощью менеджера загрузок. В качестве пункта назначения я указываю следующее:
request?.setDestinationInExternalPublicDir(
Environment.DIRECTORY_DOWNLOADS
File.separator ".my_app", name ".jpg"
)
и это работает нормально. каталог теперь:
file://storage/emulated/0/Download/.my_app/
Однако, если я добавлю те же переменные в качестве аргументов в Glide, например:
Glide.with(this)
.load(Environment.DIRECTORY_DOWNLOADS
File.separator ".my_app/" name ".jpg")
Я получаю сообщение об ошибке, подобное этому:
W/Glide: Load failed for Download/.my_app/pic15.jpg with size [388x388]
class com.bumptech.glide.load.engine.GlideException: Failed to load resource
There were 3 causes:
java.io.FileNotFoundException(/Download/.my_app/pic15.jpg (No such file or directory))
java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))
Мне кажется, что Glide не отмечает часть перед «загрузкой».
Есть предложения?
Комментарии:
1. Используйте
Uri.parse(Environment.DIRECTORY_DOWNLOADS File.separator ".my_app/" name ".jpg")
.2. привет, спасибо за твой ответ! вы имеете в виду uri.parse() в качестве аргумента для load()? Если я это сделаю, я получу новое сообщение об ошибке: W / Glide: Сбой загрузки для Download/.my_app/pic15.jpg с размером [388×388] класса com.bumptech.glide.load.engine. Исключение GlideException: Не удалось загрузить ресурс, была 1 причина: java.lang. Исключение NullPointerException (Попытка вызвать виртуальный метод ‘boolean java.lang. Строка.равно(java.lang. Объект)’ при нулевой ссылке на объект) вызовите GlideException#logRootCauses(строка) для получения более подробной информации
3. Да, но, похоже,
Glide
не удается найти изображение на этом пути .. сначала проверьте свой путь. Доступна ли ваша папка (похоже, у вас есть . Перед папкой my_app)4. Попробуйте вместо этого этот синтаксис
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) File.separator ".my_app/" name ".jpg"
5. Это сработало, большое вам спасибо!