Правильное использование загруженных картинок в Android (Picasso)?

Всем привет! Я использую Picasso для загрузки картинок в приложение с сервера. В приложении используется несколько размеров одной и той же картинки. Вопрос тривиальный. Как будет лучше? Хранить на сервере одну картинку в высоком разрешении и при загрузке изменять её размеры для отображения разных размеров или хранить несколько картинок и загружать каждую из них для нужных мест в приложении? Как в этом случае ведёт себя Picasso? Знаю, что он подгружает данные в кэш и отображает картинку из кэша, если она уже загружена. Как он понимает, что была загружена такая же картинка, достаточно ли одинакового адреса?

Picasso.get().load(http://domen.com/img.jpg)

Ответы (1 шт):

Автор решения: Andrey Mihalev

Моё мнение - нужно иметь несколько размеров картинок, соответственно их можно хранить в разных директориях сайта, и без разницы как они будут называться, главное чтобы вы понимали - этот размер картинки можно получить именно здесь.

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

От больших картинок будут страдать медленные каналы (мобильный интернет) и медленные смартфоны, т.к. на отрисовку больших картинок требуется больше ресурсов, как процессора так и памяти.

Не рассчитывайте на кэш - сколько вы сможете хранить на чужом устройстве кэшированных картинок (100Мб, 10Мб или 500КБ?) предсказать сложно, а если на устройстве используются приложения по очистке кэша?

→ Ссылка