7
реализация, настроенная для работы на устройствах на базе
Linux.
Среда исполнения включает в себя библиотеки ядра, обеспечивающие
большую часть низкоуровневой функциональности,
доступной библиотекам
ядра языка
Java, и виртуальную машину Dalvik, позволяющую запускать
приложения.
Каждое
приложение запускается
в
своем
экземпляре
виртуальной машины, тем самым обеспечивается изоляция работающих
приложений от ОС и друг от друга. Для исполнения на виртуальной машине
Dalvik
Java-классы компилируются в исполняемые файлы с расширением .dex
с помощью инструмента dx, входящего в состав
Android SDK. DEX (Dalvik
EXecutable) - формат исполняемых файлов для виртуальной машины Dalvik,
оптимизированный для использования минимального объема памяти. При
использовании
IDE Eclipse
и
плагина
ADT (
Android Development Tools)
компиляция классов
Java в формат
.dex происходит автоматически.
Архитектура Android Runtime
такова,
что
работа
программ
осуществляется строго в рамках
окружения виртуальной машины, что
позволяет защитить
ядро ОС от возможного вреда со стороны других ее
составляющих. Поэтому код с ошибками или
вредоносное ПО не смогут
испортить
Android и устройство на его базе, когда сработают.
На еще более высоком уровне располагается каркас приложений
(
Application Framework),
архитектура которого
позволяет
любому
приложению использовать уже реализованные возможности других
приложений, к
которым разрешен доступ. В состав каркаса входят
следующие компоненты:
богатый и расширяемый набор представлений (
Views), который
может быть использован для создания визуальных компонентов приложений,
например, списков, текстовых полей, таблиц, кнопок или даже встроенного
web-браузера;
контент-провайдеры (
Content Providers), управляющие данными,
которые одни приложения открывают для других, чтобы те могли их
использовать для своей работы;
менеджер ресурсов (
Resource Manager), обеспечивающий доступ
к ресурсам без функциональности (не несущим кода), например, к строковым
данным, графике, файлам и другим;
менеджер оповещений (
Notification Manager),
позволяющий
приложениям отображать собственные уведомления для пользователя в
строке состояния;
менеджер
действий
(
Activity
Manager),
управляющий
жизненными циклами приложений, сохраняющий историю работы с
действиями, предоставляющий систему навигации по действиям;
8
менеджер местоположения (
Location Manager), позволяющий
приложениям периодически получать обновленные данные о текущем
географическом положении устройства.
Application Framework предоставляет в распоряжение приложений в
ОС
Android вспомогательный
функционал, благодаря чему реализуется
принцип многократного использования компонентов приложений и ОС.
Естественно, в рамках политики безопасности.
И, наконец, самый высокий, самый близкий к пользователю уровень
приложений. Именно на этом уровне
пользователь взаимодействует со своим
устройством, управляемым ОС
Android. Здесь представлен набор базовых
приложений,
который
предустановлен
на
ОС
Android.
Например,
браузер,
почтовый клиент,
программа для отправки
SMS, карты,
календарь,
менеджер контактов и др.
Список интегрированных приложений
может меняться в зависимости от
модели устройства и версии Android. К
этому уровню также относятся все пользовательские приложения.
Разработчик обычно взаимодействует с двумя верхними уровнями
архитектуры
Android для создания новых приложений. Библиотеки, система
исполнения и
ядро Linux скрыты за каркасом приложений.
Повторное использование компонентов других приложений приводит к
идее
задач
в
Android.
Приложение может
использовать
компоненты
другого
Android приложения
для
решения
задачи,
например,
если
разрабатываемое
приложение предполагает использование фотографий, оно
может
вызвать
приложение,
управляющее
фотографиями
и
зарегистрированное в системе
Android, выбрать с его помощью фотографию и
работать с ней.
Для
пополнения
коллекции
приложений
своего
мобильного
устройства
пользователь может воспользоваться приложением Google
Play,
которое позволяет покупать и устанавливать приложения с сервиса
Google
Play.
Разработчики, в свою
очередь, могут выкладывать свои
приложения в этот сервис, Google
Play отслеживает появление обновлений
приложения, сообщает пользователям этого приложения об обновлении и
предлагает
установить
его.
Также
Google
Play предоставляет
разработчикам
доступ к услугам и библиотекам, например,
доступ к
использованию и отображению Google Maps.
Для установки приложения на устройствах с ОС
Android создается
файл с
расширением *.apk (
Android package), который содержит исполняемые файлы,
а также вспомогательные компоненты, например, файлы с данными и
файлы
ресурсов. После установки на устройство каждое
приложение "живет" в своем
собственном изолированном экземпляре виртуальной машины Dalvik.
Достарыңызбен бөлісу: