Главная » Разработка для Android » Поставщики содержимого и Интернет – ANDROID ПРИЛОЖЕНИЯ

0

 

Вместе с компонентом Activity приложения Android поставщики содержимого предоставляют детали, необходимые для построения архитектуры MVC («Модель-вид-контроллер»). Кроме поддержки REST-подобных операций, поставщики содержимого поддерживают паттерн «Наблюдатель» (observer), который, в свою очередь, поддерживает MVC. Класс ContentResolver предоставляет метод notifyChange, транслирующий информацию об изменениях, происходящих в базе данных, тем объектам Cursor, которые зарегистрировали наблюдатели содержимого (content observers) при помощи метода registerContentObserver.

Можно подумать: «Допустим, так, но нужные мне данные находятся не на устройстве, а в Интернете». Оказывается, что в Android располагает множеством инструментов, которые очень упрощают доступ к таким данным. Возможно, вам приходилось пользоваться приложениями, работающими с данными, которые расположены в Интернете, и применяющими для этого сетевые классы Android. К сожалению, характерной чертой таких приложений является то, что им требуется довольно много времени, чтобы получить доступ к данным и доставить их вам с конкретного сервера, подключенного к Интернету. По вашему желанию такие программы даже могут отображать индикатор загрузки.

Не лучше ли будет проверить поставщики содержимого на прочность, кэшируя данные на локальном устройстве, а заодно испытать силу архитектуры Android, использующей паттерн MVC и сосредоточенной вокруг базы данных? Так свежие данные будут отображаться на экране пользовательского устройства сразу же, по мере поступления. Вы узнаете, как в Android комбинируются пользовательские интерфейсы, поставщики содержимого и связанные классы, сетевые API Android и поддержка MVC, что дает в сумме клиент REST. Этот клиент реализует преимущества, проистекающие из сходства архитектуры поставщиков содержимого и служб с передачей состояния представления, и пользователь может не тратить время на разглядывание индикатора загрузки, пока приложение занимается выборкой данных.

Широковещательный приемник

Класс BroadcastReceiver реализует иной вариант высокоуровневого механизма межпроцессной коммуникации, действующего в Android. При этом используются объекты класса Intent. У BroadcastReceiver более простой жизненный цикл, чем у других рассмотренных нами компонентов. Широковещательный приемник получает действия, совершаемые объектами Intent, подобно тому как это делает Activity. Но в отличие от активности широковещательный приемник не имеет собственного пользовательского интерфейса. Типичный случай использования широковещательного приемника – получение сигнала, который активирует приложение в определенный момент времени. Система может транслировать намерение к нескольким приемникам.

Источник: Android. Программирование на Java для нового поколения мобильных устройств

По теме:

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