Android自動車をソースから構築した後、どうすればよいですか?
ソースから Android Automotive をビルドしようとしています。次のコマンドを使用して正常にビルドできます。
$ repo init -u https://Android.googlesource.com/platform/manifest -b Android-8.0.0_r11 $ source build/envsetup.sh $ lunch car_emu_x86_64-userdebug $ make -j8 V=1 &>> make.log
私の質問は、エミュレータを実行するにはどうすればよいですか?グーグルしていくつかのstackoverflowの投稿を通過した後、私はこれに出くわしました:
まず、コマンドラインでenv変数を設定します(エミュレーターはこれを使用して、起動するエミュレーターを決定します)
export Android_PRODUCT_OUT=/path/to/build_root
次に、ファイルを作成しましたcar-emulator.sh
そしてこれをそれに入れます(ビルドはUbuntuマシンで行われました)
#!/usr/bin/env bash
Android_BUILD_OUT=/path/to/build_root/out
PREBUILT=/path/to/build_root/prebuilts
EMULATOR_OUT=${Android_BUILD_OUT}/target/product/car-x86_64
${PREBUILT}/Android-emulator/linux-x86_64/emulator \
-sysdir ${EMULATOR_OUT} \
-system ${EMULATOR_OUT}/system.img \
-ramdisk ${EMULATOR_OUT}/ramdisk.img \
-data ${EMULATOR_OUT}/userdata.img \
-kernel ${PREBUILT}/qemu-kernel/x86_64/kernel-qemu \
-scale 0.7 \
-memory 512 \
-partition-size 1024
また、関連する(darwin-x86_64)ファイルをビルドマシンからMacラップトップにダウンロードして、そこで実行してみました。エミュレータは起動しますが、巨大なネイティブスタックトレースですぐにクラッシュします。
私の質問の次の部分は、このイメージをデバイスにインストールする方法です。 CarService.apkが生成されたことがわかります。このAPKをデバイスにインストールするだけで機能しますか?または、CarServiceおよび関連パッケージは、全体をフラッシュする必要があるシステムイメージの一部である必要がありますか?
これが私がそれを動作させる方法ですAndroid 8.1.ブランチOPM5.171019.017:
$ source ./build/envsetup.sh
$ lunch aosp_car_x86_64-eng
$ emulator
端末に以下の出力が続きます。
エミュレーター:警告:システムパーティションのサイズがイメージファイルに一致するように調整されました(2562 MB> 200 MB)
エミュレーター:警告:画像ファイルに一致するようにデータパーティションサイズが調整されました(550 MB> 200 MB)
警告:ホストは要求された機能をサポートしていません:CPUID.80000001H:ECX.sse4a [ビット6]
警告:ホストは要求された機能をサポートしていません:CPUID.80000001H:ECX.sse4a [ビット6]
そして、Androidエミュレーターディスプレイに起動が表示されますAndroid自動車。上記のソリューションが機能しない場合は、エンジニアリングバージョンをビルドしてみることをお勧めしますuserdebugモード。さらに分析するためにスタックトレースを共有してください。
あなたの質問の2番目の部分について。 Android autoとAndroid automotiveを混同していると思います。
Android Autoは単なるアプリであり、APKといくつかの微調整を使用してデプロイ/セットアップできますが、Android AutomotiveはAndroid専用に設計されたカスタマイズバージョンです独自のシステムアプリケーションセットを備えた自動車業界。したがって、APKをインストールするだけではデバイスに簡単にデプロイすることはできません。
これは、実行できる私のPC環境ですAndroid Car Emulator Ubuntu 16、16G RAM、1Tディスク
$ repo init -u https://Android.googlesource.com/platform/manifest -b Android-9.0.0_r39
$ source build/envsetup.sh
$ lunch car_emu_x86_64-userdebug
$ make -j8
$ emulator
次にAndroidエミュレータは次のように起動します。