AOSP OTA增量版本问题

时间:2017-03-03 11:44:50

标签: build android-source ota

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

如果我这样做,那就干净了。在' make dist'之前,事情正常;但是构建时间要多得多,OTA文件也很臃肿;许多未修改的包被识别为被修改为%,并被添加到OTA。

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

提前致谢。

1 个答案:

答案 0 :(得分:2)

问题在于构建指纹,并且没有使用增量构建进行更新。我也遇到了与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_id.mk

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

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

export BUILD_ID = 123&& source build / envsetup.sh&&午餐

make dist