droidtune.comsitemap
Android application/vnd.android.package-archive Приложение Android Picasso - новая Android библиотека для разработчиков

Picasso - новая Android библиотека для разработчиков


Picasso - новая Android библиотека для разработчиков

Square Inc запустили Android библиотеку, которая позволит существенно упростить жизнь многим разработчикам. Если вы хоть раз пытались создать Android приложение, то сталкивались с рядом проблем, возникающих при работе с изображениями. Для опытных пользователей это не так страшно, но новичков может затормозить на некоторое время. К счастью на Android Developers есть много разных материалов и семпл-проектов, которые помогут во всем разобраться. В этом посте мы рассмотрим все наиболее часто возникающие проблемы и их связь с Picasso.

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

ANR проблема

Для начала вам необходимо связаться с сервером, чтобы узнать наличие новых статей. В ответ вы получите все новые названия и URL адреса изображений. Затем начнется их загрузка в приложение. Вот тут то и может проявить себя вышеупомянутая проблема. Окно с текстом "Приложение не отвечает" (ANR - Application Not Responding) вызывает у большинства пользователей панику. Понятное дело, что можно немного подождать, выбрав соответствующую команду, но юзеры, как правило, решают закрыть приложение. Ни первое, ни второе к позитивному пользовательскому опыту не относится, так что лучше подобного избегать. Но в чем же заключается сама проблема?

Так как приложение занято загрузкой изображений, то времени на отображение на экране девайса у него нет. Операционная система Android в этой ситуации воспринимает отсутствие активности как неспособность приложения работать и предлагает его закрыть или подождать.

Чтобы улучшить пользовательский опыт, необходимо ознакомиться с тем, что из себя представляют нити. У каждого приложения есть как минимум одна главная нить. Она отвечает за отображение пользовательского интерфейса. ANR проблема в этой ситуации решается благодаря созданию еще одной нити, которая отвечает за загрузку изображений в фоновом режиме и сообщает нити интерфейса о том, что работа окончена. Таким образом, ОС воспринимает приложение как занятое другими процессами, но не как зависшее.

Проблема вращения экрана

Изменив вертикальное положение девайса на горизонтальное, вы заставляете приложение обновлять ранее загруженные изображения и текст. Это требует дополнительных энергоресурсов и трафика. Ни первое, ни второе пользовательский опыт не улучшает.

Вот здесь пригодится опыт работы с кэшем. В этой ситуации приложение будет использовать больше памяти, но трафика и батареи - меньше, да и скорость работы возрастет. Но в чем же основной принцип работы? Главная нить делает запрос в кэш, чтобы найти необходимое изображение. Если его там нет, то оно загружается из сети, и при последующих запросах используется приложением, так что при изменении вертикального положение девайса на горизонтальное повторная загрузка из интернета не происходит - все необходимое уже имеется в памяти устройства.

Случайное закрытие

Представьте ситуацию, что вы нажали на кнопку «Назад» и операционная система закрыла приложение. Вы открываете его заново, при этом загрузка всех элементов происходит с нуля. Чтобы избежать этого процесса и ускорить работу приложения, можно использовать память диска. Кэш тут не подходит, так как при закрытии приложения все данные уничтожаются, но принцип решения проблемы тот же.

Выводы

Так причем здесь Picasso? - спросите вы. Все дело в том, что несколько строк кода Picasso позаботятся о решении вышеуказанных проблем за вас, высвободив дополнительное время для более полезных и интересных занятий. Выгоды очевидны!




    Picasso - новая Android библиотека для разработчиков:
    рейтинг 80 из 80 на основе 80 оценок.
    Всего 80 отзывов.

    Похожие публикации: