Есть ли способ заставить Glide загружать изображения только из кеша и никогда из сети?

В моем приложении для звонков у меня есть адресная книга с фотографиями профиля. Эти изображения используются на разных экранах, а также в уведомлениях о входящих вызовах. Поскольку RemoteViews уведомлений должны быть снабжены растровым изображением, прежде чем они появятся на экране, а соответствующий http-запрос может занять достаточное количество времени, я хочу загрузить изображение в RemoteViews уведомления, только если оно доступно в кеше.

Есть ли способ заставить Glide загружать изображения только из кеша и никогда из сети?

Если есть возможность загрузить и отрендерить картинку после появления уведомления, тоже был бы признателен за такое решение.

введите здесь описание изображения


person Oleh Liskovych    schedule 03.08.2020    source источник


Ответы (1)


Способ найден в документации:

Загрузка только из кеша В некоторых случаях вы можете захотеть, чтобы загрузка не удалась, если изображение еще не находится в кеше. Для этого вы можете использовать метод onlyRetrieveFromCache для каждого запроса:

Glide.with(fragment)
  .load(url)
  .onlyRetrieveFromCache(true)
  .into(imageView);

Если изображение найдено в кеше памяти или в кеше диска, оно будет загружено. В противном случае, если для этого параметра установлено значение true, загрузка завершится ошибкой.

person Oleh Liskovych    schedule 03.08.2020