Android 9 差分包制作

Android 9 差分包制作

示例:

现在原版本中进行编译:

source build/envsetup.sh
lunch xxx   //我也不知道你们的编译命令是不是一样,按照你们平时的来
make otapackage -j

编译完成后在\out\target\product\xxx\obj\PACKAGING\target_files_intermediates\目录下找到xxx-target_files-eng.xxx.zip 复制到项目根目录上。 ~/OTA_A.zip

进行二次编译,删除或者添加改动。清除OUT 目录下的原有ZIP包。

我是直接make clean清除掉out目录。再次进行编译

source build/envsetup.sh
lunch xxx   //我也不知道你们的编译命令是不是一样,按照你们平时的来
make otapackage -j

编译完成后在\out\target\product\xxx\obj\PACKAGING\target_files_intermediates\目录下找到xxx-target_files-eng.xxx.zip 复制到项目根目录上。。~/OTA_B.zip

最后就是根目录上执行

./build/tools/releasetools/ota_from_target_files -v -p out/host/linux-x86/ -i OTA_A.zip OTA_B.zip update.zip

生成的差分包就是update.zip

以下是该脚本命令行参数

命令行参数  
工具的命令行参数因版本不同有微小的变化,现列举一些常见参数说明: 
-b  (--board_config)  <file> 
在代码中用pass处理这一参数匹配,不做处理。 
-k (--package_key) <key> 
指定签名用的密钥。如果缺省,会从指定的源或目标版本包的META/misc_info.txt文件中获取,或使用"build/target/product/security/testkey"。对于制作增量升级包,默认的密钥是基于源版本包文件META/misc_info.txt中的指定的路径下的密钥对,而不是从目标版本包里的文件中获取,这点应该注意到。 
-i  (--incremental_from)  <file> 
-i参数后指定的zip将作为差分包制作的源版本包处理 
-w  (--wipe_user_data) 
生成在安装时擦除user date分区的升级包 
-n  (--no_prereq) 
忽略时间戳检查,用于开发过程中的OTA包的经常升降级 
-e  (--extra_script)  <file> 
在制作的升级包中的升级脚本中插入外部的脚本。 
-a  (--aslr_mode)  <on|off> 
指定是否打开升级包的aslr模式,默认为on状态 
-p  (--path)  <dir> 
指定一个路径,作为工具在运行过程中搜索二进制可执行文件的路径。在升级包制作中,我们一般指定/out/host/linux-x86目录,作为搜索签名工具的路径。 
-f  (--fota) <fota> 
指定是否使用 fota升级方式,默认为不使用。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值