Pixel 手機作為開發平台

開發前端軟體的汽車合作夥伴團隊需要 Google 支援的硬體平台來開發應用程式和使用者體驗。

注意事項

使用 Pixel 4a (5G) 和 Pixel 5 作為開發平台時,有以下限制:

  • Pixel 4a (5G) 和 Pixel 5 已得到驗證並受支援。要了解有關 Pixel 的更多信息,請訪問Google 商店

  • 支援以下設備,但未經積極測試。請務必下載正確的二進位文件,然後按照以下步驟操作:
    • 像素3a
    • 像素 3aXL
    • 像素4
    • 像素 4XL
    • 像素4a
    • Pixel 6 和 6 Pro(實驗性)
  • 必須使用 Android 12,內部版本SP1A.210812.016.A1

  • 支援所有藍牙設定檔。

先決條件

在繼續之前,請確認您擁有以下物品:

  1. 需要 OEM 解鎖。使用解鎖的Pixel 4a (5G) 或 Pixel 5
  2. 能夠建構 Android 程式碼的 Linux 桌面。有關更多信息,請參閱建立建置環境

程式碼同步和建構

  1. 同步 Android 版本 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. 下載專有的二進位和補丁。
    1. 像素 4a (5G)。下載 4a (5G) 二進位文件,例如適用於 Android 12 的供應商映像和 Qualcomm 驅動程序,建置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.下載 Pixel 5 二進位文件,例如適用於 Android 12 的供應商映像和 Qualcomm 驅動程序,建立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. 運行建置。請務必將以下範例中的<target>替換為aosp_bramble_caraosp_redfin_car
    . build/envsetup.sh
    lunch <target>
    m
    
  4. 建造汽車相關套件:
    m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
    

設定設備以刷新構建

如果您尚未這樣做,請啟用開發人員選項。前往“設定”>“系統”>“關於手機”,然後點擊“版本號”七次。

當您啟用開發者選項時:

  1. 進入「設定」>「系統」>「開發者選項」並啟用USB 偵錯OEM 解鎖
USB 偵錯OEM解鎖

刷新建構

  1. 若要將裝置置於快速啟動模式然後解鎖:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. 在裝置上,選擇解鎖引導程式。這樣做會刪除設備上的所有資料!
  3. 刷新建置:
    fastboot -w flashall
    
  4. 建置啟動並顯示主畫面後:
    1. 啟用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. 要將所需的汽車專用文件推送到設備:
      adb sync vendor
      adb reboot
      
    3. 等待設備啟動:

    實驗性的

    Pixel 6 和 6 Pro 處於實驗性支援階段。我們正在努力使這些設備脫離實驗階段。

    確保您滿足上面列出的每個先決條件:

    程式碼同步和建構

    • 同步android-12.0.0_r4 (SD1A.210817.015.A4)
    • https://developers.google.com/android/drivers下載適用於 SD1A.210817.015.A4 的 Oriole (P6) 和 Raven(P6 Pro) 的正確二進位文件
    • 擇優挑選 Android 12補丁
    • 建置aosp_oriole_car (Pixel 6)aosp_raven_car (Pixel 6 Pro)。
    • AAOS 建置工件。
    • m android.hardware.automotive.audiocontrol@1.0-service android.hardware.automotive.vehicle@2.0-service
      
    • 快閃記憶體裝置並啟用 adb 重新安裝,如上文步驟 4重新安裝所述
    • 將 AAOS 工件推送到設備
    • 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
      
    • 可選擇使用以下命令來修復顯示密度
    • adb shell wm density 240
      adb reboot
      

    如有任何問題,請聯絡aaos-on-phone@google.com