Основная линия

В Android 10 была представлена ​​Mainline (ранее на этом сайте она называлась модульными системными компонентами). Mainline модулирует некоторые системные компоненты Android и позволяет обновлять их вне обычного цикла выпуска Android. Это позволяет Google и партнерам Android распространять обновления широко, быстро и беспрепятственно на устройства конечных пользователей, не создавая при этом лишних помех.

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

Архитектура

Mainline преобразует выбранные компоненты системы в модули . Модульная архитектура, показанная на рисунке 1, позволяет обновлять компоненты системы, исправляя критически важные ошибки и внося другие необходимые улучшения, без влияния на реализации нижнего уровня от поставщиков или приложения и сервисы верхнего уровня.

Главная линия архитектура

Рисунок 1. Основная архитектура.

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

Обновления модулей

Некоторые модули основной ветки используют формат контейнера APEX (представленный в Android 10), а некоторые — формат APK.

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

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

Название модуля Название пакета Тип Представлен релиз
AdServices com.google.android.adservices АПЕКС Android 13
адбд com.android.adbd АПЕКС Android 11
Здоровье Android com.google.android.healthfitness АПЕКС Android 14
Поиск приложений com.android.appsearch АПЕКС Android 13
ИСКУССТВО com.android.art АПЕКС Android 12
Bluetooth com.google.android.bt АПЕКС Android 13
CellBroadcast com.android.cellbroadcast АПЕКС Android 11
Конфигурационная инфраструктура com.android.configinfrastructure АПЕКС Android 14
Шифрование com.android.conscrypt АПЕКС Android 10
Планирование работы устройств com.android.scheduling АПЕКС Android 12
DNS-резолвер com.android.resolv АПЕКС 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.android.ipsec АПЕКС Android 11
СМИ Медиа: com.android.media

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

Вход через Captive Portal: com.android.captiveportallogin

Компоненты сети: com.android.networkstack
APK Android 10
Среда выполнения NNAPI com.android.neuralnetworks APK Android 11
OnDevicePersonalization Runtime Основная функциональность пакета: com.google.android.ondevicepersonalization (APEX)

Функциональность API OnDevicePersonalization: com.google.android.ondevicepersonalization (APK)

Функциональность API FederatedCompute: com.google.android.federatedcompute (APK)
APEX и APK Android 13
PermissionController com.android.permissioncontroller APK Android 10
Удалённое предоставление ключей com.android.rkpd АПЕКС Android 14
Расширения SDK com.android.sdkext АПЕКС Android 11
Статсд com.android.os.statsd АПЕКС Android 11
Привязка com.android.tethering АПЕКС Android 11
Данные о часовых поясах com.android.tzdata АПЕКС Android 10
UWB com.android.uwb АПЕКС Android 13
Wi-Fi com.android.wifi АПЕКС Android 11