Linea principale

Android 10 ha introdotto Mainline (in precedenza chiamato Componenti di sistema modulari su questo sito). La versione principale modularizza alcuni componenti del sistema Android e consente di aggiornarli al di fuori del normale ciclo di rilascio di Android. In questo modo, i partner di Google e Android possono distribuire gli aggiornamenti in modo ampio, rapido e senza problemi sui dispositivi degli utenti finali in modo non invadente.

I dispositivi degli utenti finali possono ricevere gli aggiornamenti Mainline dalla funzionalità di aggiornamento di sistema di Android Google Play (che viene eseguita sull'infrastruttura del Google Play Store) o tramite un meccanismo over-the-air (OTA) fornito dal partner.

Architettura

Mainline converte i componenti di sistema selezionati in moduli. L'architettura modulare mostrata nella Figura 1 consente di aggiornare i componenti di sistema con correzioni di bug critiche e altri miglioramenti, se necessario, senza influire sulle implementazioni dei fornitori di livello inferiore o su app e servizi di livello superiore.

Architettura
principale

Figura 1. Architettura principale

Gli aggiornamenti dei moduli non introducono nuove API. Utilizzano solo le API SDK e di sistema garantite dalla Compatibility Test Suite (CTS), comunicano solo tra di loro e utilizzano solo API C stabili o interfacce AIDL stabili.

Aggiornamenti dei moduli

Alcuni moduli Mainline utilizzano il formato del contenitore APEX (introdotto in Android 10) e altri utilizzano il formato APK.

I moduli Mainline aggiornati possono essere raggruppati e inviati ai dispositivi degli utenti finali da Google, utilizzando la funzionalità di aggiornamento di sistema di Google Play, o dal partner Android, utilizzando un meccanismo OTA fornito dal partner. Il pacchetto del modulo viene installato e ripristinato in modo atomico: vengono aggiornati tutti i moduli che devono essere aggiornati o nessuno.

Moduli disponibili

Nome modulo Nome pacchetto Digitazione Introduzione della release
AdServices Più di uno Più di uno Android 13
adbd com.android.adbd APEX Android 11
Android Salute APEX Android 14
Ricerca di app com.android.appsearch APEX Android 13
ARTE com.android.art APEX Android 12
Bluetooth APEX Android 13
CellBroadcast com.android.cellbroadcast APEX Android 11
Infrastruttura di configurazione com.android.configinfrastructure APEX Android 14
Conscrypt com.android.conscrypt APEX Android 10
Pianificazione dei dispositivi com.android.scheduling APEX Android 12
Resolver DNS com.android.resolv APEX Android 10
DocumentsUI com.android.documentsui APK Android 10
Servizi esterni com.android.ext.services APK (Android 10)
APEX (Android 11)
Android 10
Raccolta IPsec/IKEv2 com.android.ipsec APEX Android 11
Media Contenuti multimediali: com.android.media

Codec multimediali: com.android.media.swcodec
APEX Android 10 (estrattori, API MediaSession)
Android 11 (API MediaParser)
MediaProvider com.android.mediaprovider APEXAndroid 11
ModuleMetadata com.android.modulemetadata APK Android 10
Stack di rete Configurazione delle autorizzazioni dello stack di rete: com.android.networkstack.permissionconfig

Accesso al portale captive: com.android.captiveportallogin

Componenti di rete: com.android.networkstack
APK Android 10
NNAPI Runtime com.android.neuralnetworks APK Android 11
Runtime OnDevicePersonalization Più di uno Più di uno Android 13
Titolare di autorizzazioni com.android.permissioncontroller APK Android 10
Provisioning delle chiavi da remoto com.android.rkpd APEX Android 14
Estensioni SDK com.android.sdkext APEX Android 11
Statsd com.android.os.statsd APEX Android 11
Tethering com.android.tethering APEX Android 11
Dati fuso orario com.android.tzdata APEX Android 10
UWB com.android.uwb APEX Android 13
Wi-Fi com.android.wifi APEX Android 11