Пиксельные устройства как платформы разработки

Это руководство предназначено в основном для разработчиков, которые хотят тестировать и разрабатывать с использованием AAOS.

Предостережения

Эти ограничения применяются при использовании Pixel в качестве платформы разработки:

Есть вероятность, что вы можете заблокировать свое устройство, будьте осторожны!
  • Планшет Pixel Tablet проверен и поддерживается. Вы можете посетить Google Store, чтобы купить его.

  • Следующие устройства поддерживаются, но активно не тестируются. Обязательно загрузите правильные двоичные файлы, а затем следуйте инструкциям и измените команды по мере необходимости:
    • Пиксель 5
    • Пиксель 6, 6а и 6Про
    • Пиксель 7, 7а и 7Про
    • Пиксель 8 и 8Про
  • Вы должны использовать Android 14, сборка android-14.0.0_r30 .

  • Ограниченная поддержка профилей Bluetooth, а некоторые профили вообще не работают.
  • Планшет не поддерживает GPS, для определения местоположения требуется «приложение для определения местоположения или подобное».

Предварительные условия

Прежде чем продолжить, убедитесь, что у вас есть следующие элементы:

  1. Требуется OEM-разблокировка.
  2. Рабочий стол Linux, способный создавать код Android. Дополнительные сведения см. в разделе Создание среды сборки .

Синхронизация кода и сборка

  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. Загрузите образ поставщика для пиксельных устройств с сайта Developers.google.com для 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. Возьмите патч
    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. Соберите пакеты, связанные с автомобилестроением:
    m android.hardware.automotive.vehicle@2.0-default-service android.hardware.automotive.audiocontrol-service.example 
    

Настройте устройство для прошивки сборки

Если вы еще этого не сделали, включите «Параметры разработчика» . Откройте «Настройки» > «Система» > «О телефоне», а затем семь раз коснитесь «Номер сборки».

Если вы включили параметры разработчика:

  1. Перейдите в «Настройки» > «Система» > «Параметры разработчика» и включите отладку по USB и разблокировку OEM :
USB-загрузкаOEM-разблокировка

Прошить сборку

  1. Чтобы перевести устройство в режим быстрой загрузки и затем разблокировать его:
    adb reboot bootloader
    fastboot flashing unlock
    
  2. На устройстве выберите «Разблокировать загрузчик». При этом все данные на устройстве будут удалены!
  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. Чтобы отправить необходимые файлы, относящиеся к автомобильной отрасли, на устройство:
      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.