我正面临着AOSP增量OTA构建的问题。如果我执行增量构建(不使用make clean),构建将快速完成,并且我得到一个较小的OTA文件,并且OTA在目标系统上成功更新;但目标系统的增量构建数量保持不变。因此,下次生成另一个OTA并尝试更新时,它将失败,并给出错误:"package expects指纹of ..//.“。因为,增量内部版本号是构建指纹的一部分。
如果我在“make dist”之前做了“make clean”,一切都很好;但是构建时间要长得多,而且OTA文件是臃肿的;许多没有修改的包被识别为修改了%,并被添加到OTA中。
如何在不“清理”的情况下增加内部版本号?
提前谢谢。
发布于 2017-09-07 02:03:42
问题出在构建指纹上,它没有随着增量构建而更新。我在构建指纹时也遇到过同样的问题。在开始内部构建之前,只需删除以下文件。
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。
导出BUILD_ID=123 &&源代码构建/envsetup.sh &&午餐
创建dist
https://stackoverflow.com/questions/42578037
复制相似问题