配套系列教学视频链接:
说明
系统:Android10.0
设备: FireFly RK3399 (ROC-RK3399-PC-PLUS)
前言
前面几个章节我们把产品配置文件结构,文件内容,大体介绍了一下,我们可以通过实战一把, 在源码中配置一个新产品。本章节的目标就是在rk3399源码中创建一个新的产品,名字可以自定义为qh100_rk3399。
一, 拷贝参考模板
将device/rockchip/rk3399/rk3399_roc_pc_plus 作为模板,
拷贝到device/rockchip/qh100_rk3399,或者 device/rockchip/rk3399/qh100_rk3399。如下所示:
二,新建AndroidProducts.mk
创建device/rockchip/qh100_rk3399/AndroidProducts.mk, 设置如下
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/qh100_rk3399.mk \
COMMON_LUNCH_CHOICES := \
qh100_rk3399-userdebug \
qh100_rk3399-user \
qh100_rk3399-eng \
三, 修改qh100_rk3399.mk
将device/rockchip/qh100_rk3399/的rk3399_roc_pc_plus.mk重新命名为qh100_rk3399.mk, 并修改如下内容:
PRODUCT_NAME := qh100_rk3399
PRODUCT_DEVICE := qh100_rk3399
PRODUCT_BRAND := rockchip
PRODUCT_MODEL := qh100
如下所示:
四, 修改init.xxx.rc文件
将init.rk3399_roc_pc_plus.rc重命名init.qh100_rk3399.rc,并修改device/rockchip/qh100_rk3399/qh100_rk3399.mk
157 PRODUCT_COPY_FILES += \
158 device/rockchip/qh100_rk3399/init.qh100_rk3399.rc:vendor/etc/init/init.qh100_rk3399.rc\
159 device/rockchip/qh100_rk3399/gps/u-blox.conf:system/etc/u-blox.conf
五, 选择新产品
如果要单独编译android源码可以如下操作:
source FFTools/build.sh
选择9,即可,或者lunch qh100_rk3399-userdebug
make -j6
./mkimge.sh
或者一键编译:
./FFTools/make.sh -d rk3399-roc-pc-plus -j8 -l qh100_rk3399-userdebug
打包统一镜像:
./FFTools/mkupdate/mkupdate.sh -l qh100_rk3399-userdebug
最后生成:
总结
通过自己创建新的产品, 对android源码中厂商定制的东西会有一个更完整的理解, 后期要做定制化的工作就会知道在哪里改动了。