Telefoni Pixel come piattaforme di sviluppo

I team dei partner automobilistici che sviluppano software front-end hanno bisogno di una piattaforma hardware supportata da Google su cui sviluppare app ed esperienze utente.

Avvertenze

Queste limitazioni si applicano quando si utilizzano Pixel 4a (5G) e Pixel 5 come piattaforme di sviluppo:

  • Pixel 4a (5G) e Pixel 5 sono verificati e supportati. Per saperne di più sul Pixel, visita il Google Store .

  • I seguenti dispositivi sono supportati ma non testati attivamente. Assicurati di scaricare i binari corretti e quindi segui i passaggi seguenti:
    • Pixel 3a
    • Pixel 3aXL
    • Pixel 4
    • Pixel 4XL
    • Pixel 4a
    • Pixel 6 e 6 Pro (sperimentali)
  • Devi utilizzare Android 12, build SP1A.210812.016.A1 .

  • Il supporto non è fornito per tutti i profili Bluetooth.

Prerequisiti

Prima di continuare, conferma di avere i seguenti elementi:

  1. È richiesto lo sblocco OEM. Usa un Pixel 4a (5G) o un Pixel 5 sbloccato
  2. Desktop Linux in grado di creare codice Android. Per ulteriori informazioni, consulta Creazione di un ambiente di compilazione .

Sincronizzazione e compilazione del codice

  1. Per sincronizzare la build Android SP1A.210812.016.A1:
    mkdir aaos_on_phone
    cd aaos_on_phone
    repo init -u https://android.googlesource.com/platform/manifest -b android-12.0.0_r3 --use-superproject --partial-clone --partial-clone-exclude=platform/frameworks/base --clone-filter=blob:limit=10M
    repo sync -j8 -c -q
    
  2. Scarica i binari e le patch proprietari.
    1. Pixel 4a (5G). Scarica i binari 4a (5G), come l'immagine del fornitore e i driver Qualcomm per Android 12, build SP1A.210812.016.A1 :
      curl --output - https://dl.google.com/dl/android/aosp/google_devices-bramble-sp1a.210812.016.a1-a60d24d5.tgz  | tar -xzvf -
      tail -n +315 extract-google_devices-bramble.sh | tar -zxvf -
      
      curl --output - https://dl.google.com/dl/android/aosp/qcom-bramble-sp1a.210812.016.a1-3fa45eab.tgz | tar -xzvf -
      tail -n +315 extract-qcom-bramble.sh | tar -xzvf -
      
    2. Pixel 5. Scarica i binari Pixel 5, come l'immagine del fornitore e i driver Qualcomm per Android 12, build SP1A.210812.016.A1 :
      curl --output - https://dl.google.com/dl/android/aosp/google_devices-redfin-sp1a.210812.016.a1-8813b219.tgz  | tar -xzvf -
      tail -n +315 extract-google_devices-redfin.sh | tar -zxvf -
      
      curl --output - https://dl.google.com/dl/android/aosp/qcom-redfin-sp1a.210812.016.a1-8d32b5b1.tgz | tar -xzvf -
      tail -n +315 extract-qcom-redfin.sh | tar -xzvf -
      
  3. Esegui la build. Assicurati di sostituire <target> nell'esempio seguente con aosp_bramble_car o aosp_redfin_car :
    . build/envsetup.sh
    lunch <target>
    m
    
  4. Crea i pacchetti relativi all'automotive:
    m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
    

Configura il dispositivo per eseguire il flashing della build

Se non l'hai già fatto, abilita Opzioni sviluppatore . Vai su Impostazioni > Sistema > Informazioni sul telefono, quindi tocca Numero build sette volte.

Dopo aver abilitato le Opzioni sviluppatore:

  1. Vai su Impostazioni> Sistema> Opzioni sviluppatore e abilita il debug USB e lo sblocco OEM :
Bugie USBSblocco OEM

Flash la build

  1. Per mettere il dispositivo in modalità di avvio rapido e quindi sbloccarlo:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. Sul dispositivo, seleziona Sblocca Bootloader. In questo modo si cancellano tutti i dati sul dispositivo!
  3. Per eseguire il flashing della build:
    fastboot -w flashall
    
  4. Dopo che la build si avvia e viene visualizzata la schermata Home:
    1. Per abilitare adb remount :
      adb root && sleep 5 && adb disable-verity && sleep 1 && adb reboot && adb wait-for-device && sleep 5 && adb root && sleep 5 &&  adb remount
      
    2. Per eseguire il push dei file specifici per autoveicoli richiesti sul dispositivo:
      adb sync vendor
      adb reboot
      
    3. Attendi l'avvio del dispositivo:

    Sperimentale

    Pixel 6 e 6 Pro sono supportati in via sperimentale. Stiamo lavorando per portare questi dispositivi fuori dalla fase sperimentale.

    Assicurati di aver soddisfatto tutti i prerequisiti sopra elencati:

    Sincronizzazione e compilazione del codice

    • Sincronizza android-12.0.0_r4 (SD1A.210817.015.A4)
    • Scarica i binari corretti per Oriole (P6) e Raven (P6 Pro) per SD1A.210817.015.A4 da https://developers.google.com/android/drivers
    • Scegli le patch per Android 12.
    • Costruisci aosp_oriole_car (Pixel 6) o aosp_raven_car (Pixel 6 Pro).
    • Gli artefatti di build di AAOS.
    • m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
      
    • Dispositivo flash e abilita il rimontaggio adb come descritto sopra nel passaggio 4 rimontare
    • Invia gli artefatti AAOS al dispositivo
    • FILES="bin/hw/android.hardware.automotive.vehicle@2.0-service bin/hw/android.hardware.automotive.audiocontrol@1.0-service lib64/android.automotive.watchdog-V2-ndk_platform.so lib64/android.hardware.automotive.audiocontrol@1.0.so lib64/android.automotive.watchdog-V2-ndk_platform.so lib64/android.hardware.automotive.vehicle@2.0.so etc/vintf/manifest/android.hardware.automotive.vehicle@2.0-service.xml etc/vintf/manifest/audiocontrol_manifest.xml etc/init/android.hardware.automotive.audiocontrol@1.0-service.rc etc/init/android.hardware.automotive.vehicle@2.0-service.rc"; for F in $FILES ; do echo writing $F; adb push $OUT/vendor/$F vendor/$F ; done
      adb reboot
      
    • Facoltativo per correggere la densità di visualizzazione, utilizzare il comando seguente
    • adb shell wm density 240
      adb reboot