Android 差分包

文章介绍了在高通平台上编译OTA差分包的步骤,包括sourcebuild/envsetup.sh,lunch选择项目,make-j24,makeotapackage等。在编译过程中遇到signapk.jar错误时,可以通过makesignapk解决。生成差分包后,使用ota_from_target_files.py脚本制作升级包,并说明了升级差分包的生效过程。

一般而言,在开发过程中会有升级,目前主流使用的都是ota 差分包流程

那么如何编译差分包呢?

参考:https://blog.csdn.net/weixin_39641173/article/details/117569857

1、首先高通平台的编译流程与android原生态的编译流程一样,需要经历以下几步:

a. source build/envsetup.sh;

b. lunch 选择项目

c. make -j24

编译完之后

4.make otapackage

5. mkdir OTA

然后进行烧录,把out\target\product\msm8909\obj\PACKAGING\target_files_intermediates目录下的msm8909-target_files-eng.zpeng.zip拷贝到OTA目录下,可以命名为msm8909-target_files-eng.zpeng_A.zip,

6. 然后进行一下修改,直接进行make otapackage,生成一个新包再out\target\product\msm8909\obj\PACKAGING\target_files_intermediates目录下,再把msm8909-target_files-eng.zpeng.zip拷贝到OTA下可以命名为msm8909-target_files-eng.zpeng_B.zip,

7. 可以开始进行差分包制作, 在src根目录下执行./build/tools/releasetools/ota_from_target_files -i 包> 包> 。这里必须在src根目录下执行,因为ota_from_target_files.py这个脚本里面写定了相对路径的引用文件。

如:./build/tools/releasetools/ota_from_target_files -v-t MMC-i

./OTA/msm8909-target_files-eng.zpeng_A.zip

./OTA/msm8909-target_files-eng.zpeng_B.zip

./OTA/update.zip

8. 在/OTA/update.zip  就是升级用的差分包。

实际我在编译的过程中会出现如下情况:

ExternalError: Failed to run signapk.jar: return code 1:
Error: Unable to access jarfile out/host/linux-x86/framework/signapk.jar

出现一些signapk.jar的异常,导致编译出现了问题。

参考如下的解决方案:

https://blog.csdn.net/Tiger99111/article/details/126522501

make signapk

它的作用是将signapk 编译到差分环境里面去了。out/host/linux-x86

然后再编译就会成功。步骤跟上面一样

./build/tools/releasetools/ota_from_target_files -p out/host/linux-x86 -k build/target/product/security/releasekey  -i ./OTA/ceshi-eng_A.kangml.zip   ./OTA/ceshi-eng_B.kangml.zip   ./OTA/update.zip

生成 uodate.zip文件

那么当产生完差分包后,如何去严正ota 差分包生效了呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值