Pixel Phones als Entwicklungsplattformen

Die Automotive-Partnerteams, die Front-End-Software entwickeln, benötigen eine von Google unterstützte Hardwareplattform, auf der sie Apps und Benutzererlebnisse entwickeln können.

Vorbehalte

Diese Einschränkungen gelten bei der Verwendung von Pixel 4a (5G) und Pixel 5 als Entwicklungsplattformen:

  • Pixel 4a (5G) und Pixel 5 sind verifiziert und werden unterstützt. Um mehr über das Pixel zu erfahren, besuchen Sie den Google Store .

  • Die folgenden Geräte werden unterstützt, aber nicht aktiv getestet. Stellen Sie sicher, dass Sie die richtigen Binärdateien herunterladen, und führen Sie dann die folgenden Schritte aus:
    • Pixel 3a
    • Pixel 3aXL
    • Pixel 4
    • Pixel 4 XL
    • Pixel 4a
    • Pixel 6 und 6 Pro (experimentell)
  • Sie müssen Android 12, Build SP1A.210812.016.A1 verwenden .

  • Alle Bluetooth-Profile werden nicht unterstützt.

Voraussetzungen

Bevor Sie fortfahren, vergewissern Sie sich, dass Sie die folgenden Artikel haben:

  1. Eine OEM-Freischaltung ist erforderlich. Verwenden Sie entweder ein entsperrtes Pixel 4a (5G) oder Pixel 5
  2. Linux-Desktop, der Android-Code erstellen kann. Weitere Informationen finden Sie unter Erstellen einer Build-Umgebung .

Code synchronisieren und erstellen

  1. So synchronisieren Sie Android Build 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. Laden Sie die proprietären Binärdateien und Patches herunter.
    1. Pixel 4a (5G). Laden Sie die 4a (5G)-Binärdateien herunter, z. B. das Anbieter-Image und die Qualcomm-Treiber für 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. Laden Sie die Pixel 5-Binärdateien herunter, z. B. das Herstellerbild und die Qualcomm-Treiber für 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. Führen Sie den Build aus. Stellen Sie sicher, dass Sie <target> im folgenden Beispiel entweder aosp_bramble_car oder aosp_redfin_car :
    . build/envsetup.sh
    lunch <target>
    m
    
  4. Erstellen Sie die Automotive-bezogenen Pakete:
    m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
    

Richten Sie das Gerät ein, um den Build zu flashen

Falls noch nicht geschehen, aktivieren Sie die Entwickleroptionen . Gehen Sie zu Einstellungen > System > Über das Telefon und tippen Sie dann siebenmal auf Build-Nummer.

Wenn Sie die Entwickleroptionen aktiviert haben:

  1. Gehen Sie zu Einstellungen > System > Entwickleroptionen und aktivieren Sie USB-Debugging und OEM-Entsperrung :
USB-BebuggenOEM-Freischaltung

Flashen Sie den Build

  1. So versetzen Sie das Gerät in den Fastboot-Modus und entsperren es dann:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. Wählen Sie auf dem Gerät Bootloader entsperren aus. Dabei werden alle Daten auf dem Gerät gelöscht!
  3. Um den Build zu flashen:
    fastboot -w flashall
    
  4. Nachdem der Build gestartet wurde und der Startbildschirm angezeigt wird:
    1. Um adb remount zu aktivieren:
      adb root && sleep 5 && adb disable-verity && sleep 1 && adb reboot && adb wait-for-device && sleep 5 && adb root && sleep 5 &&  adb remount
      
    2. So übertragen Sie die erforderlichen automobilspezifischen Dateien auf das Gerät:
      adb sync vendor
      adb reboot
      
    3. Warten Sie, bis das Gerät startet:

    Experimental

    Pixel 6 und 6 Pro werden auf experimenteller Basis unterstützt. Wir arbeiten daran, diese Geräte aus dem Experimentierstadium zu holen.

    Stellen Sie sicher, dass Sie alle oben aufgeführten Voraussetzungen erfüllt haben:

    Code synchronisieren und erstellen

    • android-12.0.0_r4 (SD1A.210817.015.A4) synchronisieren
    • Laden Sie die korrekten Binärdateien für Oriole (P6) und Raven (P6 Pro) für SD1A.210817.015.A4 von https://developers.google.com/android/drivers herunter
    • Cherrypick die Android 12- Patches .
    • Erstellen aosp_oriole_car (Pixel 6) oder aosp_raven_car (Pixel 6 Pro).
    • Die AAOS bauen Artefakte auf.
    • m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
      
    • Flashen Sie das Gerät und aktivieren Sie das erneute Mounten von adb, wie oben in Schritt 4 erneutes Mounten beschrieben
    • Pushen Sie AAOS-Artefakte auf das Gerät
    • 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
      
    • Verwenden Sie optional den folgenden Befehl, um die Anzeigedichte zu korrigieren
    • adb shell wm density 240
      adb reboot