開発プラットフォームとしての Google Pixel

このガイドは、AAOS を使用してテストと開発を行うデベロッパーを対象としています。

注意点

Google Pixel を開発プラットフォームとして使用する場合、次の制限が適用されます。

デバイスが動作しなくなるおそれがあるため、慎重にご使用ください。
  • Google Pixel Tablet は検証およびサポートされています。Google ストアで購入できます。

  • 下記のデバイスはサポートされていますが、現在はテストされていません。正しいバイナリをダウンロードして、指示に沿って、必要に応じてコマンドを変更してください。
    • Google Pixel 5
    • Google Pixel 6、6a、6 Pro
    • Google Pixel 7、7a、7 Pro
    • Google Pixel 8 と Google Pixel 8 Pro
  • Android 14 を使用し、android-14.0.0_r30 をビルドする必要があります

  • Bluetooth プロファイルのサポートが限定的であり、一部のプロファイルはまったく機能しない
  • タブレットが GPS に対応していないため、位置情報に「仮想位置情報アプリまたは同様のもの」が必要

前提条件

続行する前に、以下の項目を満たしていることを確認してください。

  1. OEM ロック解除が必要です。
  2. Android コードのビルドが可能な Linux デスクトップ。詳細については、ビルド環境を構築するをご覧ください。

コードの同期とビルド

  1. Android ビルド 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. AP1A.240405.002 の Google Pixel デバイス用ベンダー イメージを developers.google.com からダウンロードします。
    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. パッチを取得する
    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. ビルドを実行します。:
    . build/envsetup.sh
    lunch aosp_tangorpro_car-ap1a-userdebug
    m
  5. Automotive 関連のパッケージをビルドします。
    m android.hardware.automotive.vehicle@2.0-default-service android.hardware.automotive.audiocontrol-service.example 

ビルドをフラッシュするようにデバイスを設定する

まだ有効にしていない場合は、開発者向けオプションを有効にしてください。[設定] > [システム] > [デバイス情報] に移動し、ビルド番号を 7 回タップします。

[開発者向けオプション] を有効にしている場合:

  1. [設定] > [システム] > [開発者向けオプション] に移動し、[USB デバッグ] と [OEM ロック解除] を有効にします。
USB デバッグ OEM ロック解除

ビルドをフラッシュする

  1. デバイスを Fastboot モード(Fastboot mode)にしてからロックを解除します。
    adb reboot bootloader
    fastboot flashing unlock
  2. デバイスで、[Unlock the Bootloader] を選択します。この操作により、デバイス上のすべてのデータが消去されます。
  3. ビルドをフラッシュします。
    fastboot -w flashall
  4. ビルドがアニメーションで起動を開始したら、次の操作を行います。
    1. 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. 必要な Automotive 固有のファイルをデバイスにプッシュします。
      adb sync vendor && adb reboot
    3. デバイスが起動するまで待ちます。

    ヒント

  5. 画面の明るさが低すぎる場合:
    adb shell settings put system screen_brightness 255
  6. 充電器に接続したときに起動する:
    adb reboot bootloader 
    fastboot oem off-mode-charge 1
    fastboot reboot
  7. 疑似位置情報を有効にします。
        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. 問題が発生した場合は、aaos-on-phone@google.com までお問い合わせください。