In questa pagina viene spiegato come scaricare, creare ed eseguire l'SDV AAOS su Cuttlefish.
Scarica il codice sorgente dell'SDV AAOS
Segui le istruzioni fornite in Scarica l'origine per Android.
Configura l'ambiente di build
Dalla directory di lavoro, esegui lo script envsetup.sh per configurare l'ambiente di build:
source build/envsetup.shQuesto script importa diversi comandi che ti consentono di lavorare con il codice sorgente Android, inclusi i comandi utilizzati in questa pagina. Per visualizzare il codice sorgente dello script, consulta platform/build/envsetup.sh. Per visualizzare la guida integrata, digita hmm.
Scegli un target
Prima di creare un SDV, identifica un target da creare. Per identificare il target da creare, utilizza il comando lunch seguito da una stringa che rappresenta il target per cui stai eseguendo la build. Ad esempio, utilizza questo comando per creare un target per l'emulatore Cuttlefish:
lunch sdv_core_cf-aosp_current-userdebugQuesto comando seleziona il prodotto, la configurazione della release e la variante da creare e memorizza la selezione nell'ambiente.
I target lunch per SDV sono forniti in un progetto Git separato che si trova nella directory device/google/sdv. Consulta una descrizione dettagliata dei target disponibili all'indirizzo device/google/sdv/README.md. I principali target di Cuttlefish (cf) sono:
sdv_core_cf-aosp_current-userdebug: crea un'immagine di AAOS SDV Core (sdv_core) che viene eseguita su Cuttlefish (cf).sdv_media_cf-aosp_current-userdebug: crea un'immagine di AAOS SDV Core con API multimediali virtualizzate virtIO (sdv_media).sdv_media_har_cf-aosp_current-userdebug- Crea un'immagine che estende il target multimediale SDV AAOS (sdv_media_cf)lunchin modo che contenga il renderer ad alta affidabilità (HAR). HAR viene eseguito automaticamente all'avvio.sdv_ivi_cf-aosp_current-userdebug: crea un'immagine dell'In-Vehicle Infotainment (IVI) contenente il gateway SDV e le app di esempio Java.sdv_ivi_cf_ds-aosp_current-userdebug: crea un'immagine che estende il target IVI SDV AAOS (sdv_ivi_cf) e include l'implementazione di DriverUI e del quadro strumenti di Display Safety.
Crea SDV AAOS
Esegui questo comando per creare il target. A seconda delle specifiche della tua workstation, la prima build richiede tra i 30 e i 60 minuti. Le build successive richiedono molto meno tempo.
mL'output della build viene visualizzato in $OUT_DIR. Se crei target diversi,
ogni build di target viene visualizzata in $OUT_DIR.
Testa la build utilizzando Cuttlefish
Dopo aver creato l'SDV AAOS, testa la build utilizzando Cuttlefish.
Per avviare Cuttlefish con la tua build:
cvd createCuttlefish viene eseguito utilizzando la destinazione di build (
sdv_core_cf-aosp_current-userdebug). Dopo l'avvio di Cuttlefish, viene visualizzato questo messaggio:VIRTUAL_DEVICE_BOOT_COMPLETED Virtual device booted successfullyEsegui
adbper connetterti a Cuttlefish.Esegui
adb devicesper verificare che la build sia in esecuzione. Viene visualizzato un risultato simile al seguente:List of devices attached 0.0.0.0:6520 deviceEsegui
cvd stopper spegnere il dispositivo.
Per eseguire più istanze di Cuttlefish con build diverse, consulta Cuttlefish: multi-tenancy.
Risoluzione dei problemi
Questa sezione spiega come risolvere i problemi che potrebbero verificarsi durante il download, la creazione o l'esecuzione di AAOS SDV.
Errori RBE
Se riscontri errori di Remote Build Execution (RBE), rimuovi le definizioni di USE_RBE e ENABLE_RBE_BOOTSTRAP da .bashrc o .zshrc
cvd: VM manager crosvm isn't supported on this machine
Se Cuttlefish segnala che il gestore di VM crosvm non è supportato sulla tua macchina, esegui questo comando per installare Cuttlefish:
sudo apt install cuttlefish-commoncvd non trovato
Se ricevi un errore cvd not found:
- Configura di nuovo la build.
- Continua con Scegli un target.
Loop di arresti anomali di Cuttlefish
Se Cuttlefish entra in un loop di arresto anomalo:
- Per arrestare tutte le istanze Cuttlefish, esegui
cvd stop. - Utilizza Cuttlefish per ripetere il test della build.