Понимание архитектуры приложений Android

Илья Дергунов

Илья Дергунов

Автор статьи. ИТ-специалист с 20 летним стажем, автор большого количества публикаций на профильную тематику (разработка ПО, администрирование, новостные заметки). Подробнее.

Архитектура Android приложенийПроблема

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

Обсуждение

Приложение для платформы Android состоит из одного или нескольких следую­щих компонентов, написанных в виде классов Java.

  • Активность (Activity) охватывает визуальные компоненты (представления) отдельного экрана, а также код, который выводит на экран данные и может реагировать на события, вызываемые пользователем. Почти каждое приложе­ние имеет по крайней мере один класс
  • Служба (Service) — это компонент, который не имеет пользовательского ин­терфейса и может работать в течение более длительного периода времени, чем активность. Два основных вида использования служб — выполнение продол­жительных задач (например, музыкальный проигрыватель) и задач средней продолжительности без привязки потока, обрабатывающего события от поль­зовательского интерфейса.
  • Широковещательные приемники (broadcast receivers) менее распространены и используются для реагирования на общесистемные события, такие как потеря сетевого соединения или восстановление связи, низкий уровень заряда бата­реи, перезагрузка системы и т.д.
  • Провайдеры контента (content providers) также являются относительно ред­кими и используются, когда одному приложению необходимо разделить свои данные с другими приложениями; они также могут использоваться с адапте­рами синхронизации.
  • Адаптеры синхронизации (sync adapters) синхронизируют данные с облачными службами; наиболее известными примерами являются приложения Contacts и Calendar на устройстве, которые можно легко синхронизировать с вашей учет­ной записью

Ваш код не создает эти объекты с помощью оператора new, как в обычной про­грамме на языке Java, а запрашивает обращение к активности, службе и т.д., исполь­зуя объект под названием намерение (intent), который указывает на ваше желание что-то сделать. Намерение может запускать активность в вашем приложении (по имени класса), запускать активность в другом приложении (путем указания типа контента и другой информации), запускать службы и запрашивать другие операции. Взаимодействие этих компонентов показано на рис. 1.

Компоненты приложения для платформы Android

Рис. 1. Компоненты приложения для платформы Android

Справочная документация

Каждый разработчик приложений для платформы Android должен, веро­ятно, сохранить, по крайней мере, следующие закладки или избранные ссылки в браузере для получения быстрой справки в любое время.

 

Вас заинтересует / Intresting for you:

Версии платформы Android
Версии платформы Android 2477 просмотров Илья Дергунов Sun, 04 Nov 2018, 14:44:59
О платформе Android
О платформе Android 4857 просмотров Илья Дергунов Mon, 29 Oct 2018, 17:07:02
Источники примеров кода для со...
Источники примеров кода для со... 3534 просмотров Валерий Павлюков Sat, 24 Nov 2018, 12:19:04
Работа над Android-приложением...
Работа над Android-приложением... 2155 просмотров Боба Wed, 14 Nov 2018, 15:37:25
Войдите чтобы комментировать