用于更新应用程序的方法及装置、电子设备和介质制造方法及图纸

技术编号:28295046 阅读:37 留言:0更新日期:2021-04-30 16:18
本公开提供了一种用于更新应用程序的方法、装置、电子设备、计算机可读存储介质和计算机程序产品,涉及计算机技术领域,尤其涉及应用程序技术领域。实现方案为:响应于接收到应用程序的新版本的应用程序包,将新版本的应用程序包与应用程序的历史版本的应用程序包进行比对;根据比对结果生成描述文件,其中描述文件中记录新版本的应用程序包相对于历史版本的应用程序包存在变化的文件的信息;以及根据描述文件和新版本的应用程序包中存在的该存在变化的文件,生成应用程序的升级包。

【技术实现步骤摘要】
用于更新应用程序的方法及装置、电子设备和介质
本公开涉及计算机
,尤其涉及应用程序
,具体涉及一种用于更新应用程序的方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
技术介绍
随着应用程序生态的逐渐繁荣,开发者对应用程序的修改也变得越来越多。通常,在对客户端的应用程序进行更新时需要重新下载全量的包,即使这其中的大部分文件是已经存在于客户端的。重复下载的存在,使得升级所占用的带宽不断增长,严重浪费了带宽资源,造成了互联网企业巨大的成本损耗;用户更新应用程序的过程中消耗了很多不必要的流量,同时大量数据下载所导致的用户打开应用程序时的时间延迟也严重影响了用户体验。
技术实现思路
本公开提供了一种用于更新应用程序的方法、装置、电子设备、计算机可读存储介质和计算机程序产品。根据本公开的一方面,提供了一种在服务端运行的用于更新应用程序的方法,包括:响应于接收到所述应用程序的新版本的应用程序包,将所述新版本的应用程序包与所述应用程序的历史版本的应用程序包进行比对根据所述比对结果生成描述文件,其中所述描述文件中本文档来自技高网...

【技术保护点】
1.一种在服务端运行的用于更新应用程序的方法,包括:/n响应于接收到所述应用程序的新版本的应用程序包,将所述新版本的应用程序包与所述应用程序的历史版本的应用程序包进行比对;/n根据所述比对结果生成描述文件,其中所述描述文件中记录所述新版本的应用程序包相对于所述历史版本的应用程序包存在变化的文件的信息;以及/n根据所述描述文件和所述新版本的应用程序包中存在的所述存在变化的文件,生成所述应用程序的升级包。/n

【技术特征摘要】
1.一种在服务端运行的用于更新应用程序的方法,包括:
响应于接收到所述应用程序的新版本的应用程序包,将所述新版本的应用程序包与所述应用程序的历史版本的应用程序包进行比对;
根据所述比对结果生成描述文件,其中所述描述文件中记录所述新版本的应用程序包相对于所述历史版本的应用程序包存在变化的文件的信息;以及
根据所述描述文件和所述新版本的应用程序包中存在的所述存在变化的文件,生成所述应用程序的升级包。


2.如权利要求1所述的方法,其中,将所述新版本的应用程序包与所述应用程序的历史版本的应用程序包进行比对包括:
响应于接收到新版本的应用程序包,获取所述应用程序的一个或多个最新的历史版本的应用程序包;以及
将所获取的历史版本的应用程序包与所述新版本的应用程序包分别进行比对,以确定所述新版本的应用程序包相对于各个历史版本的应用程序包存在变化的文件。


3.如权利要求2所述的方法,其中,获取所述应用程序的一个或多个最新的历史版本的应用程序包包括:
获取所述新版本的应用程序包所对应的应用程序的标识;
根据所述标识确定所述应用程序的历史版本的应用程序包的信息;以及
根据所确定的应用程序包的信息获取所述一个或多个最新的所述历史版本的应用程序包。


4.如权利要求3所述的方法,其中,根据所述标识确定所述应用程序的历史版本的应用程序包信息包括:
基于应用程序包信息表确定所述应用程序的历史版本的应用程序包的信息,
其中,所述应用程序包信息表中包括所述应用程序的标识、所述应用程序的各个版本的版本号和存储地址。


5.如权利要求2-4中任一项所述的方法,其中,将所获取的历史版本的应用程序包与所述新版本的应用程序包分别进行比对包括:
将所述历史版本的应用程序包和所述新版本的应用程序包中的各个文件分别通过校验算法进行计算;
将计算后的所述历史版本的应用程序包中的文件与计算后的所述新版本的应用程序包中的文件进行比对;以及
基于所述比对结果确定所述新版本的应用程序包相对于所述历史版本的应用程序包存在变化的文件。


6.如权利要求5所述的方法,其中,所述存在变化的文件包括以下所组成的组中的一个或多个:更新文件、新增文件和删除文件,其中,基于所述比对结果确定所述新版本的应用程序包相对于所述历史版本的应用程序包存在变化的文件包括:
响应于所述历史版本的应用程序包和所述新版本的应用程序包的相同位置相同名称的文件的计算结果不同,确定所述新版本的应用程序包中的所述文件相对于所述历史版本的应用程序包为更新文件;
响应于文件只存在于所述新版本的应用程序包中,确定所述新版本的应用程序包中的所述文件相对于所述历史版本的应用程序包为新增文件;以及
响应于文件只存在于所述历史版本的应用程序包中,确定相对于所述新版本的应用程序包,所述历史版本的应用程序包中的所述文件为删除文件。


7.如权利要求6所述的方法,其中,所述校验算法包括以下所组成的组中的任意一个:md5算法、sha1算法、sha256算法、mssql算法。


8.如权利要求5中任一项所述的方法,其中,根据所述描述文件和所述新版本的应用程序包中存在的所述存在变化的文件,生成所述应用程序的升级包包括:
将所述描述文件以及所述新版本的应用程序包中存在的所述存在变化的文件进行打包,以得到升级包;以及
将所述升级包的信息存入升级包信息表中,以基于所述升级包信息表对所述客户端的应用程序进行更新,
其中,所述升级包信息表中包括与所述升级包相对应的所述新版本的应用程序包和所述历史版本的应用程序包的各自版本号、所述应用程序的标识以及所述升级包的存储地址。


9.如权利要求8所述的方法,还包括:
接收来自客户端的针对所述应用程序的更新请求,其中,所述更新请求中包括所述客户端的当前版本应用程序的版本号,其中,基于所述升级包信息表对所述客户端的应用程序进行更新包括:
根据所述当前版本应用程序的版本号确定对应于所述应用程序的新版本的应用程序包;
响应于存在所述新版本的应用程序包,根据所述升级包信息表确定对应于所述新版本的应用程序包和所述当前版本应用程序的升级包;以及
响应于存在对应于所述新版本的应用程序包和所述当前版本应用程序的升级包,获取所述升级包以使得基于所述升级包对所述客户端的应用程序进行更新。


10.如权利要求1所述的方法,其中,基于内容分发网络对所述应用程序进行更新。


11.如权利要求1所述的方法,还包括:...

【专利技术属性】
技术研发人员:喻聪刘源旭陶柯
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

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

1