AOSP OTA增量版本问题

AOSP OTA incremental version issue

我遇到了 AOSP 增量 OTA 构建的问题。如果我进行增量构建(没有 make clean),构建会很快完成并且我会得到一个较小的 OTA 文件,并且 OTA 更新会在目标系统上成功;但是目标系统的增量构建号保持不变。 因此,下次生成另一个 OTA 并尝试更新时,它会失败,并给出错误:"package expects build fingerprint of ../../..//.. "。因为,增量内部版本号是内部版本指纹的一部分。

如果我在 'make dist' 之前执行 'make clean',一切正常;但是构建时间要长得多,OTA 文件也很臃肿;许多未修改的包被识别为被某些 % 修改,并添加到 OTA。

如何在没有 'make clean' 的情况下增加内部版本号?

提前致谢。

问题出在构建指纹上,它没有随增量构建更新。我也遇到过与 buildfingerprint 相同的问题。在开始内部构建之前,只需删除以下文件。

rm -rf out/target/product/abc123/system/build*
rm -rf out/target/product/abc123/obj/ETC/system_build_prop_intermediates/
rm -rf out/target/product/abc123/root/
rm -rf out/target/product/abc123/*.img
rm -rf out/target/product/abc123/*.zip
rm -rf out/target/product/abc123/recovery 
rm -rf out/target/product/abc123/system/priv-app/
rm -rf out/target/product/abc123/system/app/
rm -rf out/target/product/abc123/obj/PACKAGING/target_files_intermediates/
rm -rf out/target/product/abc123/obj/EXECUTABLES/recovery_*
rm -rf out/target/product/abc123/obj/PACKAGING/
rm -rf out/target/product/abc123/obj/KERNEL_OBJ/.config

注意:将“abc123”字符串替换为产品名称。

添加以下更改以覆盖默认构建。

build/core/build_id.mk

ifeq ($(BUILD_ID),)
 export BUILD_ID=NMF26Q
endif

并在开始构建之前设置新的构建 ID。

export BUILD_ID=123 && source build/envsetup.sh && lunch

制作距离