Я пытаюсь создать наиболее эффективный способ кэширования изображений, загруженных из Интернета для моего приложения, несколько лет назад я пытался это сделать и не мог найти эффективный способ сделать это работа, пока я не наткнулся на lazylist адаптера здесь:Лучший способ кэширования изображений
Lazy load of images in ListView
это работало хорошо до Android 4.0 не был введен, в данный момент приложение будет врезаться после загрузки 10 до 20 изображений, а не раньше, где я мог бы просто загружайте столько, сколько я хотел, без каких-либо проблем, об этом я позже узнал, был результатом сэндвича с мороженым, имеющего установленное ограничение на использование памяти для каждого приложения, которого не было в Gingerbread 2.3, и Низкий, я в конце концов решил просто очистить кеш каждые 10 или около того изображений, чтобы избежать сбоев, однако пользовательский интерфейс был не очень хорошим в результате этого, и приложение использовало тонны данных, поскольку оно постоянно пересматривало изображения снова и снова опять же, которые уже были просмотрены, с тех пор я попытался использовать кэш lru, но это, похоже, не работает вообще, особенно когда я покидаю приложение и перезапускаю его, все изображения выпущены, мне кажется, мне нужен лучший способ сделать это и я заметил, что другие приложения, такие как instagram, похоже, нашли способ кэшировать сотни мегабайт изображений, мне постоянно приходится вручную очищать кэш instagram в моих настройках, потому что кажется, что они могут хранить кеш бесконечного размера что, казалось бы, никогда не выбрасывает его содержимое, кто-нибудь знает, как построить такой вид кеша?
«Об этом я позже узнал из-за сэндвича с мороженым, имеющего установленное ограничение на использование памяти для каждого приложения, которого не было в Gingerbread 2.3 и ниже» - да. – CommonsWare
Если это так, почему я вдруг не смог сохранить много изображений в этом кеше, когда мой телефон обновлен до 40 из 2.3? –
У меня нет возможности узнать. По-видимому, вы тоже этого не делаете, поскольку вы, похоже, не беспокоили использование DDMS и MAT, чтобы определить источник проблем с памятью. Однако ваши претензии относительно использования памяти просто неверны. Android имеет ограничения размера кучи с Android 1.0. Они увеличиваются с первоначального предела в 16 МБ, основанного на разрешении экрана и версии ОС. – CommonsWare