[发明专利]软件升级的方法、装置、系统以及介质在审
申请号: | 202011157729.1 | 申请日: | 2020-10-26 |
公开(公告)号: | CN112416386A | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 陈泽峰;彭坚 | 申请(专利权)人: | 北京一亩田新农网络科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71 |
代理公司: | 北京奉思知识产权代理有限公司 11464 | 代理人: | 邹轶鲛;石红艳 |
地址: | 100080 北京市海淀区西小口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 升级 方法 装置 系统 以及 介质 | ||
本发明提供了一种软件升级的方法、装置、系统以及介质。所述方法包括:读取新软件包与旧软件包的文件目录;遍历新软件包与旧软件包的文件目录,并且比较新软件包的文件目录中的新文件与旧软件包的文件目录中的旧文件,以生成包含新文件与旧文件之间的差分内容的补丁文件;以及基于补丁文件和旧软件包,对软件进行升级。本发明的上述方法能够使软件的更新过程的效率更高且更稳定,从而提升用户更新的体验。
技术领域
本发明涉及一种软件升级的方法、装置、系统以及介质。
背景技术
在移动应用开发领域中,软件的更新相比传统桌面端的软件更新会频繁很多。因此,用户使用中,会花费相当大的网络流量在软件更新上。对于移动端软件的更新,通常是由软件开发商提供新版本的软件,供用户在线下载到本地后安装使用。为了节省流量,通常会对新版本的安装包和用户手机中当前版本的安装包进行差分处理,从而生成补丁包。这个补丁包的大小小于完整的安装包。用户下载该补丁包到本地后,使用补丁包和用于本地的安装包重新生成一个新版本的安装包以供安装软件。这样可以达到节省流量的目的。
例如,已知一种现有的软件升级的方法。此方法利用了安卓应用安装包apk文件中的META-INF目录下的MANIFEST.MF文件中的SHA1摘要信息,来确定新老版本安装包中文件的差异部分。将这部分生成为更新文件下发,最终实现了安卓应用的增量更新。
然而,上述现有的软件升级的方法存在以下问题:
(1)该技术使用apk文件中的MANIFEST.MF里的SHA1摘要来对比新老安装包的差异。但是,MANIFEST.MF文件并不包含一个安装包里的全部文件的信息,从而造成了该技术并不能保证使用该技术生成的安装包和真实的新版安装包在功能上完全一致,甚至可能会造成功能不可用。
例如,安卓apk文件按渠道分发时,一个通常使用的技术是,在apk文件打包签名完成后,根据要分发的渠道在META-INF文件夹中写入一个0字节的空文件。根据不同的渠道,该文件命名不同。安卓应用启动时,可以在程序内读取到该空文件,并根据文件名来获取渠道信息。在这种情况下,该技术方案无法正确处理META-INF中的空文件,会造成使用空文件方案实现的功能出现异常。
此外,MANIFEST.MF中不包含文件夹信息。如果在安装包的文件目录结构中出现空文件夹的情况,则通常无法正确处理以保证合成包和新包完全一致。此时,如果软件代码中有逻辑涉及到这些空文件夹,就可能造成合成包的功能异常。
以上说明该现有的软件升级方法在适用性和可用性方面存在缺陷。
(2)另外,该现有技术并没有针对新老安装包中有更新的文件进行差分对比,而是直接将新版本中的对应文件直接写入了更新包中,这会造成更新包体积变大,增量更新效果不好,没有很好的实现节省流量的目的。
发明内容
针对以上问题,本发明提供一种软件升级的方法、装置、系统以及介质,能够使软件的更新过程的效率更高且更稳定,从而提升用户更新的体验。
根据本发明的一方面,提供一种软件升级的方法,包括:
读取新软件包与旧软件包的文件目录;
遍历所述新软件包与所述旧软件包的文件目录,并且比较所述新软件包的文件目录中的新文件与所述旧软件包的文件目录中的旧文件,以生成包含所述新文件与所述旧文件之间的差分内容的补丁文件;以及
基于所述补丁文件和所述旧软件包,对软件进行升级。
优选地,通过使用bsdiff生成所述新文件与所述旧文件之间的所述差分内容。
优选地,所述补丁文件还包含所述新文件和所述旧文件中的空文件夹信息以及META-INF中的0字节文件信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京一亩田新农网络科技有限公司,未经北京一亩田新农网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011157729.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:破碎装置和具有其的掘锚一体机
- 下一篇:一种车载摄像头清洗设备