Per utilizzare Android Virtual Devices (AVD), Android Emulator supporta una Graphic User Interface (GUI) e un'interfaccia a riga di comando (CLI). Selezioni il workflow ottimale per il tuo ambiente.
- Crea e gestisci dispositivi virtuali La GUI è uno strumento semplice fornito alla maggior parte degli sviluppatori e degli utenti di app.
- Avviare l'emulatore dalla riga di comando offre un modo flessibile per gli utenti esperti e l'automazione. Ad esempio, per utilizzare più AVD o per configurare test continui e integrazione continua. Per iniziare, consulta gli esempi negli strumenti.
Crea un AVD per AOSP Car
La procedura per creare un AVD per AOSP Car è simile alla creazione di immagini AVD per uno smartphone (ad esempio, aosp_car_x86_64):
- Per configurare l'ambiente di sviluppo e identificare un ramo, consulta
Strumenti di controllo del codice sorgente. Dopodiché, consulta
Download del codice sorgente:
ANDROID_BRANCH="android12L-release"
REPO_URL="https://android.googlesource.com/platform/manifest"
mkdir $ANDROID_BRANCH && cd $ANDROID_BRANCH && repo init -u $REPO_URL -b $ANDROID_BRANCH --partial-clone && repo sync -c -j8 - Crea l'immagine AVD:
. build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
- Esegui l'immagine AVD (aggiungi altre opzioni di avvio della riga di comando
se necessario):
emulator &
Ad esempio:
Figura 1. Schermo dell'emulatore virtuale Android
Note su questa procedura:
- Poiché il processo di compilazione è lo stesso necessario per creare Android per un dispositivo fisico, concedi un po' di tempo per scaricare l'origine e poi compilarla.
- Per lavorare su altri rami, imposta
$ANDROID_BRANCH
su un altro ramo/tag. - Le immagini AVD, come
system.img
, vengono create in$ANDROID_PRODUCT_OUT
. Per scoprire di più sulle immagini chiave, consulta la directory di sistema dell'AVD. - Consulta il file README per scoprire come vengono utilizzati i file binari dell'emulatore precompilati nell'albero Android per eseguire l'emulatore.
Crea un AVD per auto
L'aggiunta di un nuovo AVD per auto è quasi identica all'aggiunta di un nuovo dispositivo. Ad esempio,
1660554
crea un nuovo AVD avd_car
.
Per creare un AVD per auto:
- Crea una società e una cartella dei dispositivi in base alle esigenze. Questo esempio utilizza
$ANDROID_BUILD_TOP/device/google_car/avd_car
. - Crea il makefile del prodotto,
avd_car.mk
, che definisce come creare l'AVD. - Crea una cartella del dispositivo,
avd_car_device
, in cui inserireBoardConfig.mk
esource.properties
. - Aggiungi la nuova
makefile
e la nuova sceltalunch
aAndroidProducts.mk
. - Per creare ed eseguire il nuovo AVD
avd_car
:. build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
Comprimi un file ZIP dell'immagine AVD
Puoi comprimere e condividere il tuo AVD con altri o utilizzarlo su un altro
computer. Utilizza emu_img_zip.mk
per generare il file zip dell'immagine AVD:
- Dopo aver creato l'AVD, imposta
emu_img_zip
come target:m emu_img_zip
- Il file ZIP dell'immagine AVD, con il prefisso
sdk-repo-linux-system-images
, viene creato nella cartella denominata$ANDROID_PRODUCT_OUT
.
Crea un kernel AVD
I kernel AVD sono simili ad altri kernel Android in quanto sono tutte immagini precompilate. In genere, puoi utilizzare le immagini precompilate del kernel goldfish standard così come sono da ogni release di Android.
Per sperimentare le modifiche al kernel:
- Esegui la seguente serie di istruzioni:
mkdir goldfish-kernel-54 cd goldfish-kernel-54 repo init -u https://android.googlesource.com/kernel/manifest -b common-android11-5.4 repo sync BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.x86_64 build/build.sh ls -l ./out/android11-5.4/dist/
- Sostituisci il binario del kernel nel codebase in base al makefile dell'AVD. Ad esempio,
device/generic/goldfish/board/emu64x/details.mk
includedevice/generic/goldfish/board/kernel/x86_64.mk
.
Il codice e la configurazione del kernel si trovano come segue:
Articolo | Valore |
---|---|
Branch | common-android11-5.4 (utilizzato in Android 11) |
Manifest | kernel/manifest/common-android11-5.4 |
common-modules/virtual-device | kernel/common-modules/virtual-device/android11-5.4 |
Kernel | kernel/common/android11-5.4 |
Crea un nuovo profilo dispositivo
Per consentire agli utenti di creare un AVD specifico in Gestione AVD di Android Studio, consulta
Creare e gestire dispositivi virtuali.
I produttori di dispositivi possono definire le proprie specifiche hardware, ad esempio per le dimensioni dello schermo e i DPI,
utilizzando un file devices.xml
incluso nell'immagine AVD.
- Ad esempio, consulta i profili dei dispositivi automobilistici in
automotive.xml
. - Per lo sviluppo o la prototipazione di HMI, è possibile aggiungere più dispositivi al file per la stessa immagine AVD.
- Includi il file nel file ZIP dell'immagine AVD OEM nella cartella
[ABI]
. Ad esempio, comex86_64
. - I produttori di dispositivi possono anche creare una skin dell'emulatore. Ad esempio, per definire pulsanti hardware aggiuntivi per un'esperienza utente più fedele. Ciò è utile non solo per i flussi di lavoro degli sviluppatori, ma anche per altre attività come la ricerca e la revisione dell'esperienza utente.
Crea il file XML dell'immagine AVD
I produttori di dispositivi possono creare un file XML dell'immagine AVD per Android Studio per scaricarlo.
- Ad esempio, consulta il file XML dell'immagine AVD AAOS,
sys-img2-1.xml
. - I produttori di dispositivi possono definire il proprio contratto di licenza OEM AVD per i propri utenti target (utilizzando il sistema di onore), con la licenza per Android Emulator. Android Studio ottiene il consenso dell'utente quando viene inclusa una licenza di questo tipo.
Per creare l'immagine:
- Prepara un file ZIP dell'immagine AVD.
- Decomprimi
${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip
. - Aggiungi
devices.xml
alla cartellax86_64
e poi comprimi il file in un file ZIP. Ad esempio, comeoem_avd_img_x86_64.zip
. - Aggiorna
oem-sys-img2-1.xml
. - Aggiorna il nome, le dimensioni e lo shasum del file ZIP (i file XML di esempio sono forniti in
tools
).
Ad esempio, per ospitare l'AVD su Google Cloud Storage, consulta Creazione di bucket di archiviazione.
Per caricare e rendere pubblicamente accessibile l'AVD, consulta la pagina Rendere pubblici i dati:
BUCKET_NAME="aaos-avd" gsutil mb gs://$BUCKET_NAME gsutil cp oem_avd_img_x86_64.zip gs://$BUCKET_NAME gsutil cp oem-sys-img2-1.xml gs://$BUCKET_NAME gsutil iam ch allUsers:objectViewer gs://$BUCKET_NAME
Il formato dell'URL del componente aggiuntivo SDK dell'immagine AVD è: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml
.
Ad esempio, se BUCKET_NAME è aaos-avd, l'URL è: https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml
.
Condividere un'immagine AVD con gli utenti di Android Studio
Per consentire agli utenti di scaricare immagini AVD e utilizzare l'AVD tramite Android Studio, puoi fornire un file XML del componente aggiuntivo SDK. Per maggiori dettagli, vedi Aggiornare l'IDE e gli strumenti SDK.
Per scaricare l'AVD dalla rete:
- Ospita il file ZIP dell'immagine e i file XML su un server.
- Fornisci l'URL agli utenti target.
- (Facoltativo) Limita l'accesso in base al nome utente e alla password.
In alternativa, per velocizzare lo sviluppo, scarica l'AVD in una directory locale:
- Salva i file XML e tutti gli artefatti specificati nel file XML in una cartella
(ad esempio, tutti i file ZIP delle immagini AVD) denominata
ADDON_DIR
. - Specifica l'URL come
file://$ADDON_DIR/oem-sys-img2-1.xml
.