android ota增量包的制作

由于项目需求,需要制作一个ota zip包的增量升级包,命令如下:

./build/tools/releasetools/ota_from_target_files -v -i ~/chafen2/A.zip ~/chafen2/B.zip ~/chafen2/update.zip

其中 -v代表 打印详细信息, -i代表生成 增量包,A.zip代表基础包, B.zip代表要升级到的包, update.zip代表将来要生成的差分包。



这里有两点需要注意

1. 必须在build目录下运行上面的命令, 如果在releasetools目录下执行   ota_from_target_files -v -i ~/chafen2/A.zip ~/chafen2/B.315.zip ~/chafen2/update.zip, 那么会报错。

2. A.zip 和 B.zip 不是ota包,这点一定要注意, 他们的路径是在out/target/product/mt5880/obj/PACKAGING/target_files_intermediates下。


生成的增量包里其实有两种,一种是由.p组成的, 一种是原始的.apk 或者so。 在ota_from_target_files 这个python文件里, 有一个阀值,默认是0.95, 也就是说,新版本和旧版本的同一个文件对比,如果差异小于0.95,那么就生成.P的差分包, 如果差异大于0.95,那么就把新版本的这个文件放进去,到时候升级的时候直接替换这个文件。

这个阀值的名字是OPTIONS.patch_threshold = 0.95 。

个人感觉 生成.P的差分包不是很实用, 因为用户在安装了原始包后, 很有可能做了一些升级apk,或者其他的改动, 即用户现在系统 和原始包很可能已经不一样了,这个时候生成的.P差分包就会升级失败。 而我们的用户是以万计, 使用.P的差分包很有可能造成很多用户升级失败, 所以我们不再用这种方式的升级包。

修改也很简单, 把OPTIONS.patch_threshold = 0。 就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值