Компоненты модульной системы

Android 10 или выше разбивает некоторые системные компоненты Android на модули и позволяет обновлять их вне рамок обычного цикла выпуска Android. Устройства конечных пользователей могут получать обновления для этих модульных системных компонентов из инфраструктуры Google Play Store или через предоставленный партнерами беспроводной (OTA) механизм.

О компонентах модульной системы

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

Архитектура

Android 10 или выше преобразует выбранные системные компоненты в модули , некоторые из которых используют формат контейнера APEX (представленный в Android 10), а некоторые используют формат APK. Модульная архитектура позволяет обновлять компоненты системы с помощью исправлений критических ошибок и других улучшений по мере необходимости, не затрагивая реализации поставщиков более низкого уровня или приложения и службы более высокого уровня.

Компоненты модульной системы

Рис. 1. Компоненты модульной системы

Обновления модуля не вводят новые API. Они используют только SDK и системные API, гарантированные набором тестов совместимости (CTS) , взаимодействуют только друг с другом и используют только стабильный API C или стабильные интерфейсы AIDL .

Обновленные компоненты модульной системы могут быть упакованы вместе и отправлены на устройства конечных пользователей либо Google (с использованием инфраструктуры Google Play Store), либо партнером Android (с использованием механизма OTA, предоставляемого партнером). Пакет модуля устанавливается (и откатывается) автоматически , что означает, что все модули, которые необходимо обновить, обновляются или нет. Например, если модуль, который необходимо обновить, не может быть обновлен по какой-либо причине, устройство не устанавливает ни один из модулей в пакете.

Доступные модули

Android включает следующие модули.

Название модуля Имя пакета Тип Выпуск представлен
adbd com.google.android.adbd APEX Android 11
Время выполнения com.android.runtime.release.apex APEX Android 10
Вход в Captive Portal com.android.captiveportallogin APK-файл Android 10
CellBroadcast com.google.android.cellbroadcast APEX Android 11
Conscrypt com.android.conscrypt APEX Android 10
DNS-преобразователь com.android.resolv APEX Android 10
DocumentsUI com.android.documentsui APK-файл Android 10
ExtServices com.android.ext.services APK (Android 10)
APEX (Android 11)
Android 10
Библиотека IPsec / IKEv2 com.google.android.ipsec APEX Android 11
Медиа кодеки com.android.media.swcodec APEX Android 10
СМИ com.android.media APEX Android 10 (экстракторы, MediaSession API)
Android 11 (MediaParser API)
MediaProvider com.google.android.mediaprovider APEX Android 11
ModuleMetadata com.android.modulemetadata APK-файл Android 10
Конфигурация разрешений сетевого стека com.android.networkstack.permissionconfig APK-файл Android 10
Сетевые компоненты com.android.networkstack APK-файл Android 10
NNAPI Runtime com.google.android.neuralnetworks APK-файл Android 11
PermissionController com.android.permissioncontroller APK-файл Android 10
Расширения SDK com.android.sdkext APEX Android 11
Statsd com.google.android.os.statsd APEX Android 11
Пакет версий поезда телеметрии com.google.mainline.telemetry APEX Android 11
Модем com.google.android.tethering APK-файл Android 11
Данные о часовом поясе com.android.tzdata APEX Android 10
Вай-фай com.google.android.wifi.apex APEX Android 11