Я нахожусь на пути к реализации механизма кэширования для моего приложения Android.
Я использую SoftReference
, как и многие примеры, которые я нашел. Проблема в том, что когда я прокручиваю вверх или вниз в моем ListView
, большинство изображений уже очищаются. В LogCat я вижу, что мое приложение собирает мусор каждый раз, когда приложение загружает новые изображения. Это означает, что большинство невидимых изображений в ListView
исчезли.
Итак, каждый раз, когда я прокручиваю назад до более ранней позиции (где я действительно загружал изображения раньше), мне приходится загружать изображения еще раз - они не кэшированы .
Я Я тоже исследовал эту тему. Согласно Марку Мерфи в этой статье , похоже, что есть (или была?) Ошибка с SoftReference
. Некоторые другие результаты указывают на то же самое (или на тот же результат); SoftReference
очищаются слишком рано.
Есть ли какое-либо рабочее решение?