Android Automotive 添加 Product

上文我们编译了aosp_car_x86_64,在日常的开发过程中,我们一般都会创建基于自己的Product,本文将介绍如何创建自己的Product,并编译后在我们自己的虚拟机中运行

1 概述

Product的基本要素

  • Boardconfig.mk – 芯片硬件相关配置,分区设置等
  • AndroidProducts.mk – 指定 product 配置,并将产品添加到lunch combo
  • product.mk – product 软件相关的配置
  • vendorsetup.sh(Android10之前)

2,创建Product

如何创建一个Product:

2.1,创建device目录

在 Android 系统上,product 的四要素放在两个地方

  • device 目录:用来给各厂商放 product 的。
  • build/target 目录:用来放 google 官方内置的 aosp product。

其中:

  • build/target/product 里面放 AndroidProducts.mk, 跟 product.mk
  • build/target/board 里面放 BoardConfig.mk 等。

和Google一样,我们可以在device目录创建我们的Product目录

mkdir -p device/guohuizhuan/car

2.2,新建板级配置 BoardConfig.mk

BoardConfig.mk 包含了硬件芯片架构配置,分区大小配置等信息,考虑到我们是用在虚拟机上的,所以直接继承aosp_car_x86_64的配置就好了,这个配置文件咱们可以不创建,product配置文件中直接引用即可

2.3,新建product配置

新建product配置文件

vim device/guohuizhuan/car/aosp_guohuizhuan_car.mk

其内容为

GHZ_PATH=vendor/guohuizhuan

PRODUCT_PACKAGE_OVERLAYS := ${GHZ_PATH}/overlay

EMULATOR_VENDOR_NO_SENSORS := true
$(call inherit-product, device/generic/car/emulator/aosp_car_emulator.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_x86_64.mk)

EMULATOR_VENDOR_NO_SOUND := true
PRODUCT_NAME := aosp_guohuizhuan_car
PRODUCT_DEVICE := generic_car_x86_64
PRODUCT_BRAND := Android
PRODUCT_MODEL := Car on x86_64 emulator

include ${GHZ_PATH}/device.mk

2.4,新建AndroidProducts.mk

新建AndroidProducts.mk文件,将product添加到 lunch

PRODUCT_MAKEFILES := \
        $(LOCAL_DIR)/aosp_guohuizhuan_car.mk

COMMON_LUNCH_CHOICES := \
        aosp_guohuizhuan_car-userdebug

2.5,文件目录

device/guohuizhuan目录结构如下:
device目录
vendor/guohuizhuan目录结构如下:
vendor

3,编译验证

为了验证是否已经成功编译,我们可以在device.mk中添加系统属性

PRODUCT_PROPERTY_OVERRIDES += ro.product.vendor.manufacturer=guohuizhuan

执行编译:

source build/envsetup.sh
lunch aosp_guohuizhuan_car
make -j20 2>&1 | tee build.log

编译完成后,我们按上一章节所述,在虚拟机中运行

运行起来之后查看
emulator
可以确定已经成功!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值