Dispositivos Pixel como plataformas de desarrollo

Esta guía está dirigida principalmente a los desarrolladores que quieren probar y desarrollar con AAOS

Advertencias

Estas limitaciones se aplican cuando se usa un Pixel como plataformas de desarrollo:

Existe la posibilidad de que bloquees tu dispositivo y úsalo con precaución.
  • La Pixel Tablet está verificada y es compatible. Puedes visitar Google Store para comprarlo.

  • Los siguientes dispositivos son compatibles, pero no se prueban activamente. Asegúrate de descargar la versión binarios y, luego, sigue las instrucciones y cambia los comandos según sea necesario:
    • Pixel 5
    • Pixel 6, 6a y 6 Pro
    • Pixel 7, 7a y 7Pro
    • Pixel 8 y 8 Pro
  • Debes usar Android 14 , compilación android-14.0.0_r30.

  • Compatibilidad limitada con perfiles Bluetooth y algunos de los perfiles no funcionarán en absoluto
  • La tablet no admite GPS, la ubicación requiere una "aplicación de ubicación de simulación o similar"

Requisitos previos

Antes de continuar, confirma que tienes los siguientes elementos:

  1. Se requiere desbloqueo del OEM.
  2. Computadora de escritorio Linux capaz de compilar código de Android. Para obtener más información, consulta Cómo establecer un entorno de compilación.

Sincronización y compilación de código

  1. Para sincronizar la compilación AP1A.240405.002 de Android, haz lo siguiente :
    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. Descarga la imagen del proveedor para dispositivos Pixel desde developers.google.com para 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. Toma un parche
    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. Ejecuta la compilación. :
    . build/envsetup.sh
    lunch aosp_tangorpro_car-ap1a-userdebug
    m
    
  5. Compila los paquetes relacionados con Automotive:
    m android.hardware.automotive.vehicle@2.0-default-service android.hardware.automotive.audiocontrol-service.example 
    

Cómo configurar el dispositivo para escribir la compilación en la memoria flash

Si aún no lo hiciste, habilita las Opciones para desarrolladores. Ve a Configuración > Sistema > Acerca del teléfono. Luego, presiona Número de compilación siete veces.

Una vez que habilites las Opciones para desarrolladores, sucederá lo siguiente:

  1. Ve a Configuración > Sistema > Opciones para desarrolladores y habilita la depuración por USB. Desbloqueo de OEM:
Error por USB Desbloqueo de OEM

Escribe la compilación en la memoria flash

  1. Para colocar el dispositivo en Modo fastboot [Fastboot mode] y, luego, desbloquearlo, haz lo siguiente:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. En el dispositivo, selecciona Desbloquear el bootloader. Esta acción borrará todo datos en el dispositivo.
  3. Para escribir la compilación en la memoria flash, haz lo siguiente:
    fastboot -w flashall
    
  4. Después de la compilación, comienza a iniciarse con animación:
    1. Para habilitar adb remount, haz lo siguiente:
      #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. Para enviar los archivos específicos de Automotive necesarios al dispositivo, haz lo siguiente:
      adb sync vendor && adb reboot
      
    3. Espera a que se inicie el dispositivo:

    Sugerencias

  5. Si el brillo de la pantalla es demasiado bajo, haz lo siguiente:
    adb shell settings put system screen_brightness 255
    
  6. Se inicia cuando el cargador está conectado:
    adb reboot bootloader 
    fastboot oem off-mode-charge 1
    fastboot reboot
    
  7. Habilita la ubicación simulada:
        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. Si tienes problemas, comunícate con aaos-on-phone@google.com