Dispositivi Pixel come piattaforme di sviluppo

Questa guida è rivolta principalmente agli sviluppatori che vogliono testare e sviluppare utilizzando AAOS

Precisazioni

Quando si utilizza Pixel come piattaforme di sviluppo, si applicano le seguenti limitazioni:

È possibile che tu possa bloccare il dispositivo, quindi usalo con cautela.
  • Il Pixel Tablet è verificato e supportato. Puoi visitare la pagina Google Store per acquistarlo.

  • I seguenti dispositivi sono supportati, ma non testati attivamente. Accertati di aver scaricato il file file binari, quindi segui le istruzioni e modifica i comandi come richiesto:
    • Pixel 5
    • Pixel 6, 6a e 6 Pro
    • Pixel 7, 7a e 7Pro
    • Pixel 8 e 8 Pro
  • Devi usare Android 14 , build android-14.0.0_r30.

  • Supporto limitato per i profili Bluetooth e alcuni dei profili non funzioneranno affatto
  • Il tablet non supporta il GPS, la posizione richiede "app di posizione fittizia o simile"

Prerequisiti

Prima di continuare, verifica di avere quanto segue:

  1. È richiesto lo sblocco OEM.
  2. Computer desktop Linux in grado di creare codice Android. Per ulteriori informazioni, vedi Creazione di un ambiente di creazione.

Sincronizzazione e build del codice

  1. Per sincronizzare la build Android AP1A.240405.002 :
    mkdir aaos_on_pixel
    cd aaos_on_pixel
    REPO_ALLOW_SHALLOW=0 repo init -c -u https://android.googlesource.com/platform/manifest -b android-14.0.0_r30 --use-superproject --partial-clone --partial-clone-exclude=platform/frameworks/base --clone-filter=blob:limit=10M 
    repo sync -j32
    
  2. Scarica l'immagine del fornitore per i dispositivi Pixel da developers.google.com per AP1A.240405.002
    curl --output - https://dl.google.com/dl/android/aosp/google_devices-tangorpro-ap1a.240405.002-8d141153.tgz  | tar -xzvf -
    tail -n +315 extract-google_devices-tangorpro.sh | tar -zxvf -
    
  3. Prendi una patch
    cd packages/services/Car
    git fetch https://android.googlesource.com/platform/packages/services/Car refs/changes/83/3037383/2 && git cherry-pick FETCH_HEAD #fix the audio crash
    cd -
    
  4. Esegui la build.
    . build/envsetup.sh
    lunch aosp_tangorpro_car-ap1a-userdebug
    m
    
  5. Crea i pacchetti relativi ad Auto e motori:
    m android.hardware.automotive.vehicle@2.0-default-service android.hardware.automotive.audiocontrol-service.example 
    

Configura il dispositivo per eseguire il flashing della build

Se non l'hai ancora fatto, attiva le Opzioni sviluppatore. Vai a Impostazioni > Sistema > Informazioni sullo smartphone e tocca Numero build sette volte.

Dopo aver attivato le Opzioni sviluppatore:

  1. Vai a Impostazioni > Sistema > Opzioni sviluppatore e attiva Debug USB e Sblocco OEM:
Segnalazione tramite USB Sblocco OEM

Esegui il flashing della build

  1. Per attivare la modalità di avvio rapido del dispositivo e sbloccarlo:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. Sul dispositivo, seleziona Sblocca il bootloader. In questo modo verranno resettati tutti sul dispositivo.
  3. Per eseguire il flashing della build:
    fastboot -w flashall
    
  4. Dopo l'avvio della build con l'animazione:
    1. Per attivare adb remount:
      #Temporary disable the userdata checkpoint 
      adb wait-for-device root; sleep 3; adb shell vdc checkpoint commitChanges; sleep 2 
      #Enable remount
      adb remount && sleep 2 && adb reboot && echo "rebooting the device" && adb wait-for-device root && sleep 5 && adb remount
      
    2. Per inviare al dispositivo i file specifici di Automotive richiesti:
      adb sync vendor && adb reboot
      
    3. Attendi l'avvio del dispositivo:

    Suggerimenti

  5. Se ti accorgi che la luminosità dello schermo è troppo bassa:
    adb shell settings put system screen_brightness 255
    
  6. Avvia quando il caricabatterie è collegato:
    adb reboot bootloader 
    fastboot oem off-mode-charge 1
    fastboot reboot
    
  7. Attiva posizione fittizia:
        adb unroot
        adb shell cmd location set-location-enabled true
        adb root
        adb shell appops set 0 android:mock_location allow
        adb shell cmd location providers add-test-provider gps
        adb shell cmd location providers set-test-provider-enabled gps true
        adb shell cmd location providers set-test-provider-location gps --location 37.090200,-95.712900
        #To verify
        adb shell dumpsys location | grep "last location"
    
  8. In caso di problemi, contatta aaos-on-phone@google.com