本文主要是介绍android 9.0 car的相关原生编译脚本配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
编译时会选择
source build/envsetup.sh
lunch
选择 10 可以编译汽车相关的平台系统软件
分别调用以下编译脚本
device\generic\car\common\\car.mk
# Auto modules
PRODUCT_PACKAGES += \android.hardware.broadcastradio@2.0-service \android.hardware.automotive.vehicle@2.0-service# Emulator configuration
PRODUCT_COPY_FILES += \device/generic/car/common/config.ini:config.ini# Car init.rc
PRODUCT_COPY_FILES += \packages/services/Car/car_product/init/init.bootstat.rc:root/init.bootstat.rc \packages/services/Car/car_product/init/init.car.rc:root/init.car.rc# Enable landscape
PRODUCT_COPY_FILES += \frameworks/native/data/etc/android.hardware.screen.landscape.xml:system/etc/permissions/android.hardware.screen.landscape.xml# Overwrite handheld_core_hardware.xml with a dummy config.
PRODUCT_COPY_FILES += \device/generic/car/common/android.hardware.dummy.xml:system/etc/permissions/handheld_core_hardware.xml \device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \device/sample/etc/old-apns-conf.xml:system/etc/old-apns-conf.xml \device/generic/car/common/car_core_hardware.xml:system/etc/permissions/car_core_hardware.xml \frameworks/native/data/etc/android.hardware.type.automotive.xml:system/etc/permissions/android.hardware.type.automotive.xml# Vendor Interface Manifest
PRODUCT_COPY_FILES += \frameworks/native/data/etc/android.hardware.broadcastradio.xml:system/etc/permissions/android.hardware.broadcastradio.xml \device/generic/car/common/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xmlPRODUCT_PROPERTY_OVERRIDES += \android.car.hvac.demo=trueTARGET_USES_CAR_FUTURE_FEATURES := true$(call inherit-product, packages/services/Car/car_product/build/car.mk)
app编译调用脚本如下:
packages\services\Car\car_product\build\car.mk
# Common make file for all car buildsBOARD_PLAT_PUBLIC_SEPOLICY_DIR += packages/services/Car/car_product/sepolicy/public
BOARD_PLAT_PRIVATE_SEPOLICY_DIR += packages/services/Car/car_product/sepolicy/privatePRODUCT_PACKAGES += \Bluetooth \OneTimeInitializer \Provision \SystemUI \SystemUpdaterPRODUCT_PACKAGES += \clatd \clatd.conf \pppd \screenrecord# This is for testing
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_PACKAGES += \DefaultStorageMonitoringCompanionApp \EmbeddedKitchenSinkApp \VmsPublisherClientSample \VmsSubscriberClientSample \android.car.cluster.loggingrenderer \DirectRenderingClusterSample \com.android.car.powertestservice \# SEPolicy for test apps / services
BOARD_SEPOLICY_DIRS += packages/services/Car/car_product/sepolicy/test
endifPRODUCT_COPY_FILES := \frameworks/av/media/libeffects/data/audio_effects.conf:system/etc/audio_effects.conf \packages/services/Car/car_product/preloaded-classes-car:system/etc/preloaded-classes \PRODUCT_PROPERTY_OVERRIDES += \ro.carrier=unknown \persist.bluetooth.enablenewavrcp=false# Overlay for Google network and fused location providers
$(call inherit-product, device/sample/products/location_overlay.mk)
$(call inherit-product-if-exists, frameworks/base/data/fonts/fonts.mk)
$(call inherit-product-if-exists, external/google-fonts/dancing-script/fonts.mk)
$(call inherit-product-if-exists, external/google-fonts/carrois-gothic-sc/fonts.mk)
$(call inherit-product-if-exists, external/google-fonts/coming-soon/fonts.mk)
$(call inherit-product-if-exists, external/google-fonts/cutive-mono/fonts.mk)
$(call inherit-product-if-exists, external/noto-fonts/fonts.mk)
$(call inherit-product-if-exists, external/roboto-fonts/fonts.mk)
$(call inherit-product-if-exists, external/hyphenation-patterns/patterns.mk)
$(call inherit-product-if-exists, frameworks/base/data/keyboards/keyboards.mk)
$(call inherit-product-if-exists, frameworks/webview/chromium/chromium.mk)
$(call inherit-product, packages/services/Car/car_product/build/car_base.mk)# Overrides
PRODUCT_BRAND := generic
PRODUCT_DEVICE := generic
PRODUCT_NAME := generic_car_no_telephonyPRODUCT_PROPERTY_OVERRIDES := \ro.config.ringtone=Girtab.ogg \ro.config.notification_sound=Tethys.ogg \ro.config.alarm_alert=Oxygen.ogg \$(PRODUCT_PROPERTY_OVERRIDES) \PRODUCT_PROPERTY_OVERRIDES += \keyguard.no_require_sim=true# Automotive specific packages
PRODUCT_PACKAGES += \CarService \CarTrustAgentService \CarDialerApp \CarRadioApp \OverviewApp \CarLauncher \CarLensPickerApp \LocalMediaPlayer \CarMediaApp \CarMessengerApp \CarHvacApp \CarMapsPlaceholder \CarLatinIME \CarSettings \CarUsbHandler \android.car \car-frameworks-service \com.android.car.procfsinspector \libcar-framework-service-jni \# System Server components
PRODUCT_SYSTEM_SERVER_JARS += car-frameworks-service# Boot animation
PRODUCT_COPY_FILES += \packages/services/Car/car_product/bootanimations/bootanimation-832.zip:system/media/bootanimation.zipPRODUCT_PROPERTY_OVERRIDES += \fmas.spkr_6ch=35,20,110 \fmas.spkr_2ch=35,25 \fmas.spkr_angles=10 \fmas.spkr_sgain=0 \media.aac_51_output_enabled=truePRODUCT_LOCALES := en_US af_ZA am_ET ar_EG bg_BG bn_BD ca_ES cs_CZ da_DK de_DE el_GR en_AU en_GB en_IN es_ES es_US et_EE eu_ES fa_IR fi_FI fr_CA fr_FR gl_ES hi_IN hr_HR hu_HU hy_AM in_ID is_IS it_IT iw_IL ja_JP ka_GE km_KH ko_KR ky_KG lo_LA lt_LT lv_LV km_MH kn_IN mn_MN ml_IN mk_MK mr_IN ms_MY my_MM ne_NP nb_NO nl_NL pl_PL pt_BR pt_PT ro_RO ru_RU si_LK sk_SK sl_SI sr_RS sv_SE sw_TZ ta_IN te_IN th_TH tl_PH tr_TR uk_UA vi_VN zh_CN zh_HK zh_TW zu_ZA en_XA ar_XB# should add to BOOT_JARS only once
ifeq (,$(INCLUDED_ANDROID_CAR_TO_PRODUCT_BOOT_JARS))
PRODUCT_BOOT_JARS += \android.carINCLUDED_ANDROID_CAR_TO_PRODUCT_BOOT_JARS := yes
endif
这篇关于android 9.0 car的相关原生编译脚本配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!