【技术实现步骤摘要】
安装包合成方法、装置、终端及存储介质
本申请涉及应用升级
,尤其涉及一种安装包合成方法、装置、终端及存储介质。
技术介绍
在终端中的应用存在版本更新时,终端需要从服务器端下载补丁包,以对终端中的应用进行版本升级。而为了降低终端下载补丁包所需耗费的流量,服务器端一般会采用增量更新方式生成应用升级所需的补丁包。其中,增量更新的原理是对应用的新版本安装包与旧版本安装包做差分,以找出新版本安装包与旧版本安装包中不一样的内容生成差分包,该差分包就是应用更新所需的补丁包。相应的,在服务器端采用增量更新的方式生成差分包的情况下,终端在对应用更新时,只需要从服务器下载该差分包,并利用差分包与该终端中该应用的旧版本安装包进行合成,就可以形成该应用的新版本安装包。相对于应用的新版本安装包,该差分包所包含的数据量较小,有利于减少终端对应用进行升级所需耗费的网络流量。然而,由于在终端从服务器端下载了应用的差分包之后,终端还需要将该差分包与该终端中该应用的旧版本安装包进行合成,而合成过程的耗时较长,导致终端中应用升级所需的耗时过长。
技术实现思路
有鉴于此,本申请提供了一种安装包合成方法 ...
【技术保护点】
1.一种安装包合成方法,其特征在于,包括:当检测到应用升级请求时,确定终端中待升级的目标应用的当前版本以及所述目标应用待升级到的目标版本;从终端中获取所述目标应用的当前版本的当前版本安装包;从服务器下载用于将所述目标应用从所述当前版本升级至所述目标版本的目标差分包;在下载所述目标差分包的过程中,当从所述目标差分包中下载到至少一个第一文件标识时,对所述当前版本安装包中所述至少一个第一文件标识表征的至少一个第一目标文件进行解压缩,所述第一文件标识表征当前版本安装包中需要参与合成计算的第一目标文件的标识;当从所述目标差分包中下载到差异文件时,依据经过解压缩的至少一个第一目标文件以 ...
【技术特征摘要】
1.一种安装包合成方法,其特征在于,包括:当检测到应用升级请求时,确定终端中待升级的目标应用的当前版本以及所述目标应用待升级到的目标版本;从终端中获取所述目标应用的当前版本的当前版本安装包;从服务器下载用于将所述目标应用从所述当前版本升级至所述目标版本的目标差分包;在下载所述目标差分包的过程中,当从所述目标差分包中下载到至少一个第一文件标识时,对所述当前版本安装包中所述至少一个第一文件标识表征的至少一个第一目标文件进行解压缩,所述第一文件标识表征当前版本安装包中需要参与合成计算的第一目标文件的标识;当从所述目标差分包中下载到差异文件时,依据经过解压缩的至少一个第一目标文件以及所述差异文件,合成至少一个合成文件,所述合成文件为对所述目标版本的安装包中需要参与差分计算的第二目标文件进行解压缩得到的,所述差异文件为通过对所述至少一个合成文件与所述经过解压缩的至少一个第一目标文件进行差分计算得到的;压缩所述至少一个合成文件,并将所述压缩后的至少一个合成文件合成到待合成的目标版本安装包中。2.根据权利要求1所述的安装包合成方法,其特征在于,所述目标差分包中的所述差异文件包括多个差异文件块,每个所述差异文件块由三个类别文件组成,且,所述差异文件中同一个差异文件块的三个类别文件相邻排列;所述当从所述目标差分包中下载到差异文件时,依据经过解压缩的至少一个第一目标文件以及所述差异文件,合成至少一个合成文件,包括:在从所述目标差分包下载差异文件的过程中,当下载到一个差异文件块的三个类别文件时,依据经过解压缩的至少一个第一目标文件以及当前下载到的所述差异文件块的三个类别文件,合成新文件分块,直至所有差异文件块的三个类别文件均被下载完成,其中,所述新文件分块为所述至少一个合成文件的一部分。3.根据权利要求2所述的安装包合成方法,其特征在于,所述压缩所述至少一个合成文件,并将所述压缩后的至少一个合成文件合成到待合成的目标版本安装包中,包括:当检测到合成所述新文件分块时,压缩所述新文件分块,并将所述压缩后的新文件分块合成到待合成的目标版本安装包中。4.根据权利要求1所述的安装包合成方法,其特征在于,所述从服务器下载用于将所述目标应用从所述当前版本升级至所述目标版本的目标差分包,包括:通过下载线程从服务器下载用于将所述目标应用从所述当前版本升级至所述目标版本的目标差分包;所述当从所述目标差分包中下载到至少一个第一文件标识时,对所述当前版本安装包中所述至少一个第一文件标识表征的至少一个第一目标文件进行解压缩,包括:当所述下载线程从所述目标差分包中下载到至少一个第一文件标识时,通过所述下载线程向至少一个解压缩线程发送通知,以使得所述至少一个解压缩线程分别对所述当前版本安装包中的至少一个第一目标文件进行解压缩,所述第一目标文件为所述至少一个第一文件标识所表征的至少一个文件。5.根据权利要求1所述的安装包合成方法,其特征在于,还包括:当从所述目标差分包中下载到所述目标版本安装包中的新增文件以及所述新增文件的合成位置信息时,依据所述新增文件的合成位置信息,将所述新增文件合成到所述待合成的目标版本安装包中;当从所述目标差分包中下载到所述当前版本安装包中未更新文件的标识以及所述未更新文件的合成位置信息时,依据所述未更新文件的标识,从所述当前版本安装包中获取所述未更新文件,并依据所述未更新文件的合成位置信息,将所述未更新文件合成到所述待合成的目标版本安装包中。6.一种安装包合成装置,其特征在于,包括:版本确定单元,用于当检测到应用升级请求时,确定终端中待升级的目标应用的当前版本以及所述目标应用待升级到的目标版本;旧版本获取单元,用于从终端中获取所述目标应用的当前版本的当前版本安装包;差分包下载单元,用于从服务器下载用于将所述目标应用从所述当前版本升级至所述目标版本的目标差分包;解压缩单元,用于在所述差分包下载单元下载所述目标差分包的过程中,当从所述目标差分包中下载到至少一个第一文件标识时,对所述当前版本安装包中所述至少一个第一文件标识表征的至少一个第一目标文件进行解压缩,所述第一文件标...
【专利技术属性】
技术研发人员:徐文平,甘远志,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。