Главная » Разработка для Android » РАБОТА В ФОНОВОМ РЕЖИМЕ

0

Содержание  главы

Создание, запуск и остановка Сервисов.

Привязка Сервисов к Активностям.

Установка  повышенного  приоритета  для Сервисов.

Использование AsyncTask для управления фоновыми процессами.

Создание фоновых потоков и использование обработчиков  для син- хронизации их с потоком GUI.

Отображение уведомлений типа Toast.

Использование NotificationManager для оповещения пользователя о событиях в приложении.

Создание настойчивых и текущих уведомлений.

Применения Сигнализации (Alarms) для планирования событий в при- ложении.

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

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

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

Для работы Сервисам не нужен отдельный графический интерфейс,  как в случае с Активностями или Приемниками намерений, но они по-прежнему выполняются в главном потоке хода приложения. Чтобы повысить отзыв- чивость вашего приложения, нужно уметь переносить трудоемкие процессы (например, сетевые запросы) в фоновые потоки, используя классы Thread и AsyncTask.

Android предоставляет несколько способов, с помощью которых прило- жение может взаимодействовать с пользователем без наличия  Активности. Вы узнаете, как использовать уведомления (обычные  и типа Toast) для предупреждения и оповещения пользователя без необходимости прерывать работу активного приложения.

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

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

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

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии