Android 10 wprowadził Mainline (w tej witrynie nazywane wcześniej modułowymi komponentami systemu). Mainline umożliwia modułowe tworzenie niektórych komponentów systemu Android i ich aktualizowanie poza normalnym cyklem wydawniczym Androida. Dzięki temu Google i partnerzy Androida mogą rozpowszechniać aktualizacje szeroko, szybko i płynnie na urządzeniach użytkowników w nieinwazyjny sposób.
Urządzenia użytkowników mogą otrzymywać aktualizacje Mainline z funkcji aktualizacji systemu w Google Play na Androida (która działa w ramach infrastruktury Sklepu Google Play) lub za pomocą mechanizmu bezprzewodowego udostępnianego przez partnera.
Architektura
Mainline konwertuje wybrane komponenty systemu na moduły. Architektura modułowa pokazana na rysunku 1 umożliwia aktualizowanie komponentów systemu o krytyczne poprawki błędów i inne ulepszenia w miarę potrzeby bez wpływu na implementacje dostawców niskiego poziomu ani aplikacje i usługi wyższego poziomu.
Rysunek 1. Architektura głównej linii
Aktualizacje modułów nie wprowadzają nowych interfejsów API. Aplikacje te korzystają tylko z pakietu SDK i interfejsów API systemu, które są gwarantowane przez kompatybilność z testami (CTS), komunikują się tylko ze sobą i korzystają tylko ze stabilnych interfejsów C API lub stabilnych interfejsów AIDL.
Aktualizacje modułów
Niektóre moduły Mainline używają formatu kontenera APEX (wprowadzonego w Androidzie 10), a niektóre – formatu APK.
Zaktualizowane moduły Mainline można spakować i przesłać na urządzenia użytkowników końcowych. Może to zrobić Google za pomocą funkcji aktualizacji systemu w Google Play lub partner Androida za pomocą mechanizmu OTA udostępnionego przez partnera. Pakiet modułu jest instalowany i wycofywany jako całość. Zaktualizowane są wszystkie moduły, które wymagają aktualizacji, lub żaden z nich.
Dostępne moduły
Nazwa modułu | Nazwa pakietu | Typ | Wersja |
---|---|---|---|
AdServices | com.google.android.adservices |
APEX | Android 13 |
adbd | com.android.adbd |
APEX | Android 11 |
Android Health | com.google.android.healthfitness |
APEX | Android 14 |
AppSearch | com.android.appsearch |
APEX | Android 13 |
ART | com.android.art |
APEX | Android 12 |
Bluetooth | com.google.android.btservices |
APEX | Android 13 |
CellBroadcast | com.android.cellbroadcast |
APEX | Android 11 |
Konfiguracja infrastruktury | com.android.configinfrastructure |
APEX | Android 14 |
Conscrypt | com.android.conscrypt |
APEX | Android 10 |
Planowanie na urządzeniu | com.android.scheduling |
APEX | Android 12 |
DNS Resolver | 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 Biblioteka | com.android.ipsec |
APEX | Android 11 |
Media | Multimedia: com.android.media Kodeki multimedialne: com.android.media.swcodec |
APEX | Android 10 (wyodrębnianie, interfejs MediaSession API) Android 11 (interfejs MediaParser API) |
MediaProvider | com.android.mediaprovider |
APEX | Android 11 |
ModuleMetadata | com.android.modulemetadata |
APK | Android 10 |
Sieć Sieć | Konfiguracja uprawnień stosu sieciowego: com.android.networkstack.permissionconfig Portal logowania: com.android.captiveportallogin Składniki sieci: com.android.networkstack |
APK | Android 10 |
NNAPI Czas działania | com.android.neuralnetworks |
APK | Android 11 |
Personalizacja na urządzeniu Czas działania |
Główne funkcje pakietu: com.google.android.ondevicepersonalization (APEX)Funkcje interfejsu OnDevicePersonalization API: com.google.android.ondevicepersonalization (APK)Funkcje interfejsów FederatedCompute API: com.google.android.federatedcompute (APK)
|
APEX i pliki APK | Android 13 |
PermissionController | com.android.permissioncontroller |
APK | Android 10 |
Zdalne udostępnianie klucza | com.android.rkpd |
APEX | Android 14 |
Pakiet SDK Extensions | com.android.sdkext |
APEX | Android 11 |
Statsd | com.android.os.statsd |
APEX | Android 11 |
Tethering | com.android.tethering |
APEX | Android 11 |
Strefa czasowa | com.android.tzdata |
APEX | Android 10 |
UWB | com.android.uwb |
APEX | Android 13 |
Wi-Fi | com.android.wifi |
APEX | Android 11 |