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

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

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

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

Архитектура

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

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

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

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

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

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

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

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

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

Сетевые компоненты: com.android.networkstack
АПК Андроид 10
Среда выполнения NNAPI com.android.neuralnetworks АПК Андроид 11
Среда выполнения OnDevicePersonalization Несколько Несколько Андроид 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