Android — Архитектура


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

Архитектура Android

Ядро Linux

Внизу уровней находится Linux — Linux 3.6 с примерно 115 исправлениями. Это обеспечивает уровень абстракции между аппаратным обеспечением устройства и содержит все основные драйверы оборудования, такие как камера, клавиатура, дисплей и т. Д. Кроме того, ядро ​​обрабатывает все вещи, в которых Linux действительно хорош, например, создание сетей и широкий спектр драйверов устройств , которые избавляют от проблем с подключением к периферийному оборудованию.

Библиотеки

Помимо ядра Linux существует набор библиотек, включая движок веб-браузера с открытым исходным кодом WebKit, хорошо известную библиотеку libc, базу данных SQLite, которая является полезным репозиторием для хранения и обмена данными приложений, библиотеки для воспроизведения и записи аудио и видео, SSL. библиотеки, отвечающие за безопасность в Интернете и т. д.

Библиотеки Android

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

  • android.app — Предоставляет доступ к модели приложения и является краеугольным камнем всех приложений Android.
  • android.content — Облегчает доступ к контенту, публикацию и обмен сообщениями между приложениями и их компонентами.
  • android.database — Используется для доступа к данным, опубликованным поставщиками контента, и включает классы управления базами данных SQLite.
  • android.opengl — Интерфейс Java для API рендеринга 3D-графики OpenGL ES.
  • android.os — Предоставляет приложениям доступ к стандартным службам операционной системы, включая сообщения, системные службы и межпроцессное взаимодействие.
  • android.text — Используется для визуализации и управления текстом на дисплее устройства.
  • android.view — Основные строительные блоки пользовательских интерфейсов приложений.
  • android.widget — Богатая коллекция готовых компонентов пользовательского интерфейса, таких как кнопки, метки, списковые представления, менеджеры компоновки, переключатели и т. Д.
  • android.webkit — Набор классов, предназначенных для встраивания возможностей просмотра веб-страниц в приложения.

Рассмотрев основные библиотеки на основе Java в среде выполнения Android, пора обратить наше внимание на библиотеки на основе C / C ++, содержащиеся в этом слое программного стека Android.

Среда выполнения Android

Это третий раздел архитектуры, доступный на втором слое снизу. В этом разделе представлен ключевой компонент, называемый Виртуальная машина Dalvik который является своего рода виртуальной машиной Java, специально разработанной и оптимизированной для Android.

В виртуальной машине Dalvik используются основные функции Linux, такие как управление памятью и многопоточность, присущие языку Java. Виртуальная машина Dalvik позволяет каждому приложению Android работать в собственном процессе с собственным экземпляром виртуальной машины Dalvik.

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

Фреймворк приложения

Уровень Application Framework предоставляет приложениям множество высокоуровневых сервисов в форме классов Java. Разработчикам приложений разрешается использовать эти службы в своих приложениях.

Платформа Android включает следующие ключевые службы:

  • Менеджер по деятельности — Контролирует все аспекты жизненного цикла приложения и стека действий.
  • Контент-провайдеры — Позволяет приложениям публиковать данные и обмениваться ими с другими приложениями.
  • Менеджер ресурсов — Предоставляет доступ к встроенным ресурсам без кода, таким как строки, настройки цвета и макеты пользовательского интерфейса.
  • Менеджер уведомлений — Позволяет приложениям отображать предупреждения и уведомления для пользователя.
  • Просмотр системы — Расширяемый набор представлений, используемых для создания пользовательских интерфейсов приложений.

Приложения

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

Поделись с друзьями:

Оставьте комментарий