Urządzenia Pixel jako platformy rozwojowe

Ten przewodnik jest przeznaczony głównie dla programistów, którzy chcą testować i programować przy użyciu AAOS

Zastrzeżenia

Poniższe ograniczenia mają zastosowanie w przypadku korzystania z Pixela jako platformy programistycznej:

  • Tablet Pixel został zweryfikowany i obsługiwany. Możesz odwiedzić Google Store , aby go kupić.

  • Następujące urządzenia są obsługiwane, ale nie są aktywnie testowane. Pamiętaj, aby pobrać odpowiednie pliki binarne, a następnie postępuj zgodnie z instrukcjami i zmień polecenia zgodnie z wymaganiami:
    • Piksel 5
    • Pixele 6, 6a i 6Pro
    • Pixele 7, 7a i 7Pro
    • Pixele 8 i 8Pro
  • Musisz używać Androida 14, zbuduj Android-14.0.0_r30 .

  • Ograniczona obsługa profili Bluetooth, a niektóre profile w ogóle nie będą działać
  • Tablet nie obsługuje GPS, lokalizacja wymaga „fałszywej aplikacji lokalizacyjnej lub podobnej”

Warunki wstępne

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

  1. Wymagane jest odblokowanie OEM.
  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 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. Pobierz obraz dostawcy urządzeń pikselowych ze strony Developers.google.com dla 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. Pobierz łatkę
    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. Uruchom kompilację. :
    . build/envsetup.sh
    lunch lunch aosp_tangorpro_car-ap1a-userdebug
    m
    
  5. Zbuduj pakiety związane z motoryzacją:
    m android.hardware.automotive.vehicle@2.0-default-service android.hardware.automotive.audiocontrol-service.example 
    

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 kompilacji rozpocznij uruchamianie z animacją:
    1. Aby włączyć 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. Aby wypchnąć wymagane pliki specyficzne dla branży motoryzacyjnej na urządzenie:
      adb sync vendor && adb reboot
      
    3. Poczekaj na uruchomienie urządzenia:

    Porady

  5. Jeśli widzisz, że jasność ekranu jest zbyt niska:
    adb shell settings put system screen_brightness 255
    
  6. Uruchomienie po podłączeniu ładowarki:
    adb reboot bootloader 
    fastboot oem off-mode-charge 1
    fastboot reboot
    
  7. Włącz próbną lokalizację:
        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. W przypadku jakichkolwiek problemów napisz na adres aaos-on-phone@google.com