基于安卓系统的应用程序热更新方法及装置制造方法及图纸

技术编号:38541714 阅读:27 留言:0更新日期:2023-08-19 17:09
本申请提供一种基于安卓系统的应用程序热更新方法及装置,可用于金融领域或其他技术领域。所述方法包括:在本地运行第一版本的目标应用程序时,获取目标差分包;根据目标差分包和本地保存的第一版本的目标应用程序的安装包,生成并保存第二版本的目标应用程序的安装包;根据目标差分包和第二版本的目标应用程序的安装包,获取所述第二版本的目标应用程序中的预埋桩组件与新增组件之间的映射关系和/或预埋桩进程与新增进程之间的映射关系;将所述映射关系保存在目标映射关系文件中。本申请实施例提供的基于安卓系统的应用程序热更新方法及装置,在保证补丁较小的前提下还能够完成对安卓四大组件的新增、修改,同时保证资源消耗较小。消耗较小。消耗较小。

【技术实现步骤摘要】
基于安卓系统的应用程序热更新方法及装置


[0001]本申请涉及计算机
,具体涉及一种基于安卓系统的应用程序热更新方法及装置。

技术介绍

[0002]应用程序(APP)热更新是指:在APP上线以后发现有缺陷了,如果重新走发布流程可能时间比较长,重新安装APP用户体验也不会太好,此时可以通过发布一个更新包,使APP运行的时候加载更新包里面的代码,从而解决缺陷,并且对于用户来说是无感的。
[0003]目前,基于安卓系统的应用程序热更新采用类加载方案的主要是以腾讯系为主,包括微信的Tinker、饿了么的Amigo等;采用底层替换方案的主要是阿里系的AndFix等,还有就是兼顾底层替换与类加载模式的Sophix方案。
[0004]但是,Sophix不支持对四大组件的修复,Amigo虽然支持四大组件新增修复,但是需要引入全量包补丁,比较消耗资源,其他方案相比较问题更为严重。

技术实现思路

[0005]针对现有技术中的问题,本申请实施例提供一种基于安卓系统的应用程序热更新方法及装置,能够至少部分地解决现有技术中存在的问题本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于安卓系统的应用程序热更新方法,其特征在于,包括:在本地运行第一版本的目标应用程序时,获取目标差分包,所述目标差分包是根据第一版本的目标应用程序的安装包和第二版本的目标应用程序的安装包生成的;根据所述目标差分包和本地保存的第一版本的目标应用程序的安装包,生成并保存第二版本的目标应用程序的安装包;根据所述目标差分包和所述第二版本的目标应用程序的安装包,获取所述第二版本的目标应用程序中的预埋桩组件与新增组件之间的映射关系和/或预埋桩进程与新增进程之间的映射关系;将所述预埋桩组件与新增组件之间的映射关系和/或预埋桩进程与新增进程之间的映射关系保存在目标映射关系文件中。2.根据权利要求1所述的方法,其特征在于,所述目标差分包是利用目标差分算法工具对所述第一版本的目标应用程序的安装包和所述第二版本的目标应用程序的安装包进行对比后,生成控制文件、差异文件和新增文件,然后将控制文件、差异文件和新增文件进行压缩后生成的。3.根据权利要求2所述的方法,其特征在于,所述根据所述目标差分包和本地保存的第一版本的目标应用程序的安装包,生成并保存第二版本的目标应用程序的安装包包括:根据所述目标差分包中的控制文件和差异文件在所述第一版本的目标应用程序的安装包中添加差异信息,根据所述差分包中的控制文件和新增文件在所述第一版本的目标应用程序的安装包中添加新增信息,生成第二版本的目标应用程序的安装包;将所述第二版本的目标应用程序的安装包保存在所述目标应用程序的私有目录下。4.根据权利要求1至3任一项所述的方法,其特征在于,在根据所述目标差分包和本地保存的第一版本的目标应用程序的安装包,生成并保存第二版本的目标应用程序的安装包之后,所述方法还包括:将所述第二版本的目标应用程序的安装包中的动态链接库文件复制到所述目标应用程序的私有目录下。5.根据权利要求4所述的方法,其特征在于,将所述第二版本的目标应用程序的安装包中的动态链接库文件复制到所述目标应用程序的私有目录下之后,所述方法还包括:对所述第二版本的目标应用程序的安装包进行编译,生成安卓虚拟机ART可直接执行的oat文件;将所述oat文件保存在所述目标应用程序的私有目录下。6.根据权利要求1至3任一项所述的方法,其特征在于,在将所述预埋桩组件与新增组件之间的映射关系和/或预埋桩进程...

【专利技术属性】
技术研发人员:张健罗涛李可赵海强
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1