Dispositivos Pixel como plataformas de desarrollo

Esta guía está dirigida principalmente a desarrolladores que desean realizar pruebas y desarrollar con AAOS.

Advertencias

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

Existe la posibilidad de que dañes el dispositivo. Ú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 probaron de forma activa. Asegúrate de descargar los objetos binarios correctos 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 7 Pro
    • Pixel 8 y 8 Pro
  • Debes usar Android 14 , compilación android-14.0.0_r30.

  • Compatibilidad limitada con los perfiles Bluetooth, y algunos de ellos no funcionarán en absoluto
  • La tablet no es compatible con el GPS, y la ubicación requiere una "app de ubicación simulada o similar".

Requisitos previos

Antes de continuar, confirma que tienes los siguientes elementos:

  1. Se requiere el desbloqueo para OEM.
  2. Computadora de escritorio con 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 de Android AP1A.240405.002, 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. Aplica 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 

Configura el dispositivo para escribir en la memoria flash la compilación

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

Cuando habilites las opciones para desarrolladores, haz lo siguiente:

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

Cómo escribir en la memoria flash la compilación

  1. Para colocar el dispositivo en modo fastboot y, luego, desbloquearlo, haz lo siguiente:
    adb reboot bootloader
    fastboot flashing unlock
  2. En el dispositivo, selecciona Desbloquear el bootloader. Si lo haces, se borrarán todos los datos del dispositivo.
  3. Para escribir en la memoria flash la compilación, sigue estos pasos:
    fastboot -w flashall
  4. Después de que la compilación comience a iniciarse con animación, haz lo siguiente:
    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. Inicio 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 algún problema, comunícate con aaos-on-phone@google.com.