Una Generic System Image (GSI) è un'implementazione Android pura con codice Android Open Source Project (AOSP) non modificato, eseguibile su una serie di dispositivi Android.
Gli sviluppatori di app possono installare ed eseguire i GSI di Android più recenti per eseguire test delle app su una serie di dispositivi Android esistenti e utilizzare i GSI di diverse fasi di rilascio del sistema operativo Android, incluse Anteprima per sviluppatori e build beta. L'aggiunta dei GSI alle procedure di verifica e test può offrirti alcuni vantaggi aggiuntivi:
- Copertura dei test più ampia su un maggior numero di dispositivi reali
- Più tempo per risolvere i problemi di compatibilità delle app
- Altre opportunità per risolvere i problemi di compatibilità in Android segnalati dagli sviluppatori di app
Il progetto GSI è open source e contribuisce a migliorare l'ecosistema Android fornendo ulteriori modi per migliorare la qualità delle app e del sistema operativo prima di ogni release di Android.
![Supporto GSI su tutti i dispositivi](https://developer.android.google.cn/static/topic/generic-system-image/images/gsi-support.png?authuser=9&hl=it)
I GSI includono le stesse funzionalità di sistema di base per tutti i dispositivi su cui vengono installati. In altre parole, un GSI non include le personalizzazioni del produttore del dispositivo. Per questo motivo, potresti riscontrare differenze di comportamento nelle seguenti situazioni:
- Interazioni che coinvolgono l'interfaccia utente
- Flussi di lavoro che richiedono funzionalità hardware più recenti
Verifica la conformità del dispositivo
I GSI possono funzionare solo su dispositivi con le seguenti caratteristiche:
- Il bootloader è sbloccato.
- Completamente compatibile con Treble.
- Android 9 (livello API 28) o versioni successive. I dispositivi che hanno eseguito l'upgrade ad Android 9 da una versione precedente potrebbero o non supportare i GSI.
Per determinare se il tuo dispositivo può utilizzare un GSI e quale versione del sistema operativo GSI devi installare, procedi nel seguente modo:
Verifica il supporto di Treble eseguendo questo comando:
adb shell getprop ro.treble.enabled
Se la risposta è
false
, il dispositivo non è compatibile con GSI e non devi continuare. Se la risposta ètrue
, vai al passaggio successivo.Per verificare il supporto tra versioni, esegui questo comando:
adb shell cat /system/etc/ld.config.version_identifier.txt \ | grep -A 20 "\[vendor\]"
Nell'output, cerca
namespace.default.isolated
nella sezione[vendor]
.Se il valore di questo attributo è
true
, il dispositivo supporta completamente il Vendor Native Development Kit (VNDK) e può utilizzare qualsiasi versione del sistema operativo GSI più recente rispetto a quella del sistema operativo on-device. Se possibile, utilizza la versione più recente del sistema operativo GSI disponibile.Se il valore dell'attributo è
false
, significa che il dispositivo non è completamente conforme a VNDK e può utilizzare solo un GSI per la stessa versione del sistema operativo sul dispositivo. Ad esempio, un dispositivo Android 10 (API versione 29) non conforme a VNDK può caricare solo un'immagine GSI di Android 10.Il tipo di architettura della CPU GSI deve corrispondere all'architettura della CPU del dispositivo. Per trovare la giusta architettura della CPU per l'immagine GSI, esegui questo comando:
adb shell getprop ro.product.cpu.abi
Utilizza l'output per determinare quale immagine GSI utilizzare per il flashing del dispositivo. Ad esempio, su Pixel 5, l'output indica che l'architettura della CPU è
arm64-v8a
, quindi useresti il tipo di GSIarm64
.
Scarica GSI
Esistono diversi modi per ottenere i GSI, a seconda delle esigenze di sviluppo:
- Per GSI in anteprima Android e GSI per Android con GMS, scarica le immagini dalla pagina di rilascio di GSI.
Per le immagini GSI predefinite senza applicazioni GMS, scaricale dal sito di CI AOSP:
Per creare GSI per Android senza GMS, scarica il codice sorgente da AOSP e crea i tuoi GSI.
Installa un GSI
L'installazione di un GSI dipende dal dispositivo. Consulta il produttore del dispositivo per conoscere gli strumenti e le procedure esatti. Sui dispositivi Google Pixel come Pixel 3 e modelli successivi, ci sono diversi modi per installarli:
- Il flashing manuale delle immagini GSI. Consulta i requisiti per il flashing delle immagini GSI.
- Per l'utilizzo di Dynamic System Update (DSU) per i dispositivi che eseguono già Android 10 o versioni successive: consulta la pagina Dynamic System Update
Fornisci feedback
I GSI hanno lo scopo di aiutarti a convalidare le tue app su Android. Apprezziamo il tuo feedback sulle immagini, sugli strumenti e sulla procedura per l'utilizzo dei GSI sui tuoi dispositivi.
Per segnalarci bug o richieste di funzionalità, utilizza il componente dedicato al monitoraggio dei problemi per i GSI.