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

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

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

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

Архитектура

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

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

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

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

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

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

Имя модуля Имя пакета Тип Представлен выпуск
Рекламные услуги Несколько Несколько Андроид 13
адбд com.android.adbd АПЕКС Андроид 11
Поиск приложений com.android.appsearch АПЕКС Андроид 13
ИСКУССТВО com.android.art АПЕКС Андроид 12
Bluetooth АПЕКС Андроид 13
Сотовое вещание com.android.cellbroadcast АПЕКС Андроид 11
Конкрипт com.android.conscrypt АПЕКС Андроид 10
Планирование устройства com.android.scheduling АПЕКС Андроид 12
DNS-резольвер com.android.resolv АПЕКС Андроид 10
ДокументыUI com.android.documentsui АПК Андроид 10
ЭкстСервисс com.android.ext.services АПК (Андроид 10)
АПЕКС (Андроид 11)
Андроид 10
Библиотека IPsec/IKEv2 com.android.ipsec АПЕКС Андроид 11
СМИ Медиа: com.android.media

Медиакодеки: com.android.media.swcodec
АПЕКС Android 10 (экстракторы, MediaSession API)
Android 11 (API МедиаПарсер)
Медиапровайдер com.android.mediaprovider АПЕКС Андроид 11
МодульМетаданные com.android.modulemetadata АПК Андроид 10
Сетевой стек Конфигурация разрешений сетевого стека: com.android.networkstack.permissionconfig .

Вход в Captive Portal: com.android.captiveportallogin

Сетевые компоненты: com.android.networkstack
АПК Андроид 10
Среда выполнения ННАПИ com.android.neuralnetworks АПК Андроид 11
OnDeviceСреда выполнения персонализации Несколько Несколько Андроид 13
Контроллер разрешений com.android.permissioncontroller АПК Андроид 10
Расширения SDK com.android.sdkext АПЕКС Андроид 11
Статсд com.android.os.statsd АПЕКС Андроид 11
модем com.android.tethering АПЕКС Андроид 11
Данные о часовом поясе com.android.tzdata АПЕКС Андроид 10
СШП com.android.uwb АПЕКС Андроид 13
Wi-Fi com.android.wifi АПЕКС Андроид 11
,

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

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

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

Архитектура

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

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

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

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

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

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

Имя модуля Имя пакета Тип Представлен выпуск
Рекламные услуги Несколько Несколько Андроид 13
адбд com.android.adbd АПЕКС Андроид 11
Поиск приложений com.android.appsearch АПЕКС Андроид 13
ИСКУССТВО com.android.art АПЕКС Андроид 12
Bluetooth АПЕКС Андроид 13
Сотовое вещание com.android.cellbroadcast АПЕКС Андроид 11
Конкрипт com.android.conscrypt АПЕКС Андроид 10
Планирование устройства com.android.scheduling АПЕКС Андроид 12
DNS-резольвер com.android.resolv АПЕКС Андроид 10
ДокументыUI com.android.documentsui АПК Андроид 10
ЭкстСервисс com.android.ext.services АПК (Андроид 10)
АПЕКС (Андроид 11)
Андроид 10
Библиотека IPsec/IKEv2 com.android.ipsec АПЕКС Андроид 11
СМИ Медиа: com.android.media

Медиакодеки: com.android.media.swcodec
АПЕКС Android 10 (экстракторы, MediaSession API)
Android 11 (API МедиаПарсер)
Медиапровайдер com.android.mediaprovider АПЕКС Андроид 11
МодульМетаданные com.android.modulemetadata АПК Андроид 10
Сетевой стек Конфигурация разрешений сетевого стека: com.android.networkstack.permissionconfig .

Вход в Captive Portal: com.android.captiveportallogin

Сетевые компоненты: com.android.networkstack
АПК Андроид 10
Среда выполнения ННАПИ com.android.neuralnetworks АПК Андроид 11
OnDeviceСреда выполнения персонализации Несколько Несколько Андроид 13
Контроллер разрешений com.android.permissioncontroller АПК Андроид 10
Расширения SDK com.android.sdkext АПЕКС Андроид 11
Статсд com.android.os.statsd АПЕКС Андроид 11
модем com.android.tethering АПЕКС Андроид 11
Данные о часовом поясе com.android.tzdata АПЕКС Андроид 10
СШП com.android.uwb АПЕКС Андроид 13
Wi-Fi com.android.wifi АПЕКС Андроид 11