Telefony Pixel jako platformy rozwojowe

Zespoły partnerów motoryzacyjnych, które opracowują oprogramowanie front-end, potrzebują platformy sprzętowej obsługiwanej przez Google, na której mogą tworzyć aplikacje i doświadczenia użytkowników.

Zastrzeżenia

Te ograniczenia obowiązują w przypadku korzystania z Pixela 4a (5G) i Pixela 5 jako platform programistycznych:

  • Pixel 4a (5G) i Pixel 5 zostały zweryfikowane i obsługiwane. Aby dowiedzieć się więcej o Pixelu, odwiedź Google Store .

  • Następujące urządzenia są obsługiwane, ale nie są aktywnie testowane. Pamiętaj, aby pobrać odpowiednie pliki binarne, a następnie wykonaj poniższe czynności:
    • Piksel 3a
    • Pixel 3aXL
    • Piksel 4
    • Piksel 4XL
    • Piksel 4a
    • Pixel 6 i 6 Pro (eksperymentalne)
  • Musisz używać Androida 12, kompilacja SP1A.210812.016.A1 .

  • Nie jest dostępna obsługa wszystkich profili Bluetooth.

Warunki wstępne

Zanim będziesz kontynuować, upewnij się, że masz następujące elementy:

  1. Wymagane jest odblokowanie OEM. Użyj odblokowanego Pixela 4a (5G) lub Pixela 5
  2. Pulpit Linux zdolny do tworzenia kodu dla Androida. Aby uzyskać więcej informacji, zobacz temat Tworzenie środowiska kompilacji .

Synchronizacja i kompilacja kodu

  1. Aby zsynchronizować kompilację Androida 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. Pobierz zastrzeżone pliki binarne i poprawki.
    1. Piksel 4a (5G). Pobierz pliki binarne 4a (5G), takie jak obraz dostawcy i sterowniki Qualcomm dla Androida 12, kompilacja 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. Pobierz pliki binarne Pixela 5, takie jak obraz dostawcy i sterowniki Qualcomm dla Androida 12, kompilacja 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. Uruchom kompilację. Pamiętaj, aby w poniższym przykładzie zastąpić <target> przez aosp_bramble_car lub aosp_redfin_car :
    . build/envsetup.sh
    lunch <target>
    m
    
  4. Zbuduj pakiety związane z motoryzacją:
    m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
    

Skonfiguruj urządzenie do flashowania kompilacji

Jeśli jeszcze tego nie zrobiłeś, włącz Opcje programisty . Przejdź do Ustawień i stuknij w System > Informacje o telefonie, a następnie stuknij siedem razy Numer kompilacji.

Po włączeniu opcji programisty:

  1. Przejdź do Ustawienia > System > Opcje programistyczne i włącz debugowanie USB i odblokowywanie OEM :
Błaganie USBOdblokowanie OEM

Flashuj kompilację

  1. Aby przełączyć urządzenie w tryb szybkiego uruchamiania, a następnie je odblokować:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. Na urządzeniu wybierz Odblokuj program ładujący. Spowoduje to usunięcie wszystkich danych z urządzenia!
  3. Aby sflashować kompilację:
    fastboot -w flashall
    
  4. Po uruchomieniu kompilacji i wyświetleniu ekranu głównego:
    1. Aby włączyć 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. Aby wypchnąć wymagane pliki specyficzne dla branży motoryzacyjnej na urządzenie:
      adb sync vendor
      adb reboot
      
    3. Poczekaj na uruchomienie urządzenia:

    Eksperymentalny

    Pixel 6 i 6 Pro są obsługiwane eksperymentalnie. Pracujemy nad wyprowadzeniem tych urządzeń z fazy eksperymentalnej.

    Upewnij się, że spełniłeś wszystkie wymagania wstępne wymienione powyżej:

    Synchronizacja i kompilacja kodu

    • Synchronizuj android-12.0.0_r4 (SD1A.210817.015.A4)
    • Pobierz poprawne pliki binarne dla Oriole (P6) i Raven (P6 Pro) dla SD1A.210817.015.A4 z https://developers.google.com/android/drivers
    • Cherrypick łatki dla Androida 12.
    • Zbuduj aosp_oriole_car (Pixel 6) lub aosp_raven_car (Pixel 6 Pro).
    • Artefakty kompilacji AAOS.
    • m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
      
    • Flashuj urządzenie i włącz adb remount zgodnie z opisem powyżej w kroku 4 remount
    • Prześlij artefakty AAOS do urządzenia
    • 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
      
    • Opcjonalnie, aby naprawić gęstość wyświetlania, użyj następującego polecenia
    • adb shell wm density 240
      adb reboot
      

    W przypadku jakichkolwiek problemów napisz na adres aaos-on-phone@google.com