How to build Audroid Automotive OS

My Environment:

Host: Ubuntu 18.04, Intel  i7
EVT: Hikey960

Steps:
1. change directory to Android AOSP folder.
2. modify device/linaro/hikey/AndroidProducts.mk, add hikey960_car-userdebug menu item

PRODUCT_MAKEFILES := \
   $(LOCAL_DIR)/hikey.mk \
   $(LOCAL_DIR)/hikey32.mk \
   $(LOCAL_DIR)/hikey64_only.mk \
   $(LOCAL_DIR)/hikey_tv.mk \
   $(LOCAL_DIR)/hikey960.mk \
   $(LOCAL_DIR)/hikey960_tv.mk \
   $(LOCAL_DIR)/hikey960_car.mk 
COMMON_LUNCH_CHOICES := \
   hikey-userdebug \
   hikey64_only-userdebug \
   hikey_tv-userdebug \
   hikey960-userdebug \
   hikey960_tv-userdebug \
   hikey960_car-userdebug</nowiki>

3. cp device/linaro/hikey/hikey960.mk to device/linaro/hikey/hikey960_car.mk

4. Modify hikey960_car.mk

TARGET_KERNEL_USE=4.14
 TARGET_PREBUILT_KERNEL := device/linaro/hikey-kernel/Image.gz-dtb-hikey960-$(TARGET_KERNEL_USE)
 TARGET_PREBUILT_DTB := device/linaro/hikey-kernel/hi3660-hikey960.dtb-$(TARGET_KERNEL_USE)
 ...
 # Inherit the full_base and device configurations
 $(call inherit-product, device/generic/car/common/car.mk)
 $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
 $(call inherit-product, device/linaro/hikey/hikey960/device-hikey960.mk)
 $(call inherit-product, device/linaro/hikey/device-common.mk)
 $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
 ...
 PRODUCT_NAME := hikey960_car
 PRODUCT_DEVICE := hikey960
 PRODUCT_BRAND := Android
 PRODUCT_MODEL := Car on hikey960

 

5. source ./build/envsetup
6. lunch hikey960_car-userdebug
7. make -j32

================================================

For extra PRODUCT_PACKAGES and PRODUCT_COPY_FILES please see
device/generic/car/common/car.mk

   android.hardware.broadcastradio@2.0-service \
   android.hardware.automotive.vehicle@2.0-service

 

packages/services/Car/car_product/build/car.mk

   Bluetooth \
   OneTimeInitializer \
   Provision \
   SystemUI \
   SystemUpdater
   clatd \
   clatd.conf \
   pppd \
   screenrecord
   DefaultStorageMonitoringCompanionApp \
   EmbeddedKitchenSinkApp \
   VmsPublisherClientSample \
   VmsSubscriberClientSample \
   android.car.cluster.loggingrenderer \
   DirectRenderingClusterSample \
   com.android.car.powertestservice \
frameworks/base/data/keyboards/keyboards.mk)
frameworks/webview/chromium/chromium.mk)

 

packages/services/Car/car_product/build/car_base.mk

   Home \
   BasicDreams \
   CaptivePortalLogin \
   CertInstaller \
   DocumentsUI \
   DownloadProviderUi \
   FusedLocation \
   InputDevices \
   KeyChain \
   Keyguard \
   LatinIME \
   Launcher2 \
   ManagedProvisioning \
   PacProcessor \
   PrintSpooler \
   ProxyHandler \
   Settings \
   SharedStorageBackup \
   VpnDialogs \
   MmsService \
   ExternalStorageProvider \
   atrace \
   cameraserver \
   libandroidfw \
   libaudioutils \
   libmdnssd \
   libnfc_ndef \
   libpowermanager \
   libspeexresampler \
   libvariablespeed \
   libwebrtc_audio_preprocessing \
   wifi-service \
   A2dpSinkService \  

Results:

posted @ 2020-01-13 15:41  bluelogic  阅读(697)  评论(0编辑  收藏  举报