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

В 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. Пакет модуля устанавливается и откатывается атомарно; либо обновляются все модули, которые необходимо обновить, либо ни один из них.

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

Название модуля Название пакета Тип Представлен релиз
адбд com.android.adbd АПЕКС Android 11
AdServices com.google.android.adservices АПЕКС Android 13
Здоровье 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

Вход через портал авторизации:
com.android.captiveportallogin

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

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

Функциональность API FederatedCompute (APK):
com.google.android.federatedcompute
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