因Vendor Freeze的缘故,若开启Non-AB OTA, 则会遇到交叉编译vendor和system的增量升级包时需要检查fingerprint
而导致编译失败,从而无法做到增量升级包升级。高版本一般都是打开AB模式。
AB 和 non AB 切换相关宏
- /vendor_ap_s0/device/mediatek/system/mssi_64_cn/SystemConfig.mk
MTK_AB_OTA_UPDATER = yes
- /vendor_ap_s0/device/mediateksample/k62v1_64_bsp/ProjectConfig.mk
MTK_AB_OTA_UPDATER = yes
- /vendor_ap_s0/vendor/mediatek/proprietary/bootable/bootloader/lk/project/k62v1_64_bsp.mk
MTK_AB_OTA_UPDATER = yes
- /vendor_ap_s0/vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/k62v1_64_bsp/k62v1_64_bsp.mk
MTK_AB_OTA_UPDATER=yes
- /vendor_ap_s0/kernel-4.19/arch/arm64/configs/k62v1_64_bsp_debug_defconfig
// 非必要
CONFIG_MTK_AB_OTA_UPDATER=yes
编译
- 编译system(在system_mssi_u0目录下)
source build/envsetup.sh && export OUT_DIR=out_sys && lunch sys_mssi_64_cn-userdebug && make sys_images
- 编译vendor(在vendor_ap_s0目录下)
source build/envsetup.sh && export OUT_DIR=out && lunch vnd_k62v1_64_bsp-userdebug && make vnd_images krn_images
- 编译load、target包和全量包(在system_mssi_u0目录下)
python out_sys/target