增量更新的方法、设备及系统的制作方法

文档序号:6504698阅读:212来源:国知局
增量更新的方法、设备及系统的制作方法
【专利摘要】本发明公开了一种增量更新的方法、设备及系统,属于信息处理【技术领域】。方法包括:将新版本安装包进行解包后的每个新版本解包文件的头文件信息进行格式转换并打包成一个新版本档案文件包,并获取至少一个历史版本档案文件包;根据新版本档案文件包与每个历史版本档案文件包生成一个对应的差异文件,得到至少一个差异文件并发布。本发明仅通过转变新版本安装包中文件的头文件格式得到新版本档案文件包,再根据新版本档案文件包与历史本档案文件包生成差异文件,从而在不破坏数据结构的情况下生成差异文件,省略了差异文件中数据结构差异的内容,减小了差异文件的大小,进而减少了客户端下载该差异文件所付出的时间和流量。
【专利说明】增量更新的方法、设备及系统

【技术领域】
[0001]本发明涉及信息处理【技术领域】,特别涉及一种增量更新的方法、设备及系统。

【背景技术】
[0002]在客户端进行软件更新时,需要通过互联网从服务器端下载该软件的新版本安装 包,同时,客户端需要为新版本安装包的下载付出相应的下载时间及流量。然而新版本安装 包中的文件和客户端已安装的版本的安装包中的文件有较大部分是没有变化的,因此客户 端付出的下载时间和流量中较大部分是为这些相同的文件付出的。而增量更新方式仅需要 从服务告^而下载与客户知已安装的版本不同的差异文件,减少了客户端下载付出的时间和 流量,因此,增量更新方法成为重要的更新方法。
[0003]目前,增量更新的方法为:
[0004]服务器端将新版本安装包进行压缩,将压缩后的新版本安装包分别与各个压缩后 的历史版本安装包生成新版本与该历史版本对应的差异文件。压缩后的新版本安装包与 压缩后的任一历史版本安装包生成差异文件的过程为:压缩后的新版本安装包与该压缩后 的历史版本安装包通过二进制差异算法比较工具做差量计算生成差异文件。其中,差量计 算用于找出压缩后的新版本安装包中与该压缩后的历史版本安装包不同各个文件,将各个 不同的文件打包生成一个差异文件,且该差异文件的文件格式为qbd格式。例如,压缩后 的新版本安装包为V 2· 1安装包,压缩后的历史版本安装包为V2. 〇安装包、V1. 〇安装包,将 V2. 1安装包与V2· 0安装包通过二进制差异算法比较工具做差量计算生成差异文件V2.丄_ V2. 0· qbd,将V2. 1安装包与VI. 0安装包通过二进制差异算法比较工具做差量计算生成差 异文件 V2. 1_V1. 0· qbd。
[0005]客户端根据当前已安装的版本从服务器端的各个差异文件中查找已安装版本对 应的差异文件,并下载查找到的差异文件,将下载的差异文件与当前已安装的版本的安装 包进行合并,生成新版本安装包。例如,客户端当前己安装的版本为V2. 0,客户端从服务器 端的差异文件中查找V2. 1_V2. 0· qbd,并下载V2. 1_V2. 0. qbd,将下载的V2. 1_V2. 0. qbd与 当前已安装的V2· 0的安装包进行合并,生成V2. 1安装包。
[0006]在实现本发明的过程中,发明人发现上述增量更新的方法至少存在以下缺点: [0007]由于在生成差异文件前会将新版本的安装包进行压缩,但是压缩算法会破坏新版 本安装包中的数据结构,使得使用压缩后的新版本安装包与任一压缩后的历史版本安装包 生成的差异文件中除了包含数据本身差异的内容之外,还要包含结构差异的内容,进而增 加了差异文件的大小,增大了客户端下载该差异文件所付出的时间和流量。


【发明内容】

[0008]为了解决现有技术的问题,本发明实施例提供了一种增量更新的方法、设备及系 统。所述技术方案如下:
[0009]第一方面,提供了 一种增量更新的方法,所述方法包括:
[0010] 将新版本安装包进行解包,得到新版本解包文件夹,所述新版本解包文件夹下包 括至少一个新版本解包文件和新版本签名子文件夹,所述新版本签名子文件夹下包括至少 一个新版本解包文件;
[0011] 获取所述新版本解包文件夹下的每个新版本解包文件的头文件信息,并将每个新 版本解包文件的头文件信息进行格式转换,得到新版本转换文件夹;
[0012] 将所述新版本转换文件夹打包成一个新版本档案文件包,并获取至少一个历史版 本档案文件包;
[0013] 根据所述新版本档案文件包与每个历史版本档案文件包生成一个对应的差异文 件,得到至少一个差异文件;
[0014] 发布所述至少一个差异文件,使客户端在发布的至少一个差异文件中选择一个差 异文件下载,并根据下载的差异文件形成所述新版本安装包,完成增量更新。
[0015] 第二方面,提供了一种增量更新的服务器,所述服务器包括:
[0016] 解包模块,用于将新版本安装包进行解包,得到新版本解包文件夹,所述新版本解 包文件夹下包括至少一个新版本解包文件和新版本签名子文件夹,所述新版本签名子文件 夹下包括至少一个新版本解包文件;
[0017] 第一获取模块,用于获取所述新版本解包文件夹下的每个新版本解包文件的头文 件信息;
[0018] 转换模块,用于将每个新版本解包文件的头文件信息进行格式转换,得到新版本 转换文件夹;
[0019] 打包模块,用于将所述转换模块得到的所述新版本转换文件夹打包成一个新版本 档案文件包;
[0020] 第二获取模块,用于获取至少一个历史版本档案文件包;
[0021] 生成模块,用于根据所述打包模块得到的所述新版本档案文件包与每个历史版本 档案文件包生成一个对应的差异文件,得到至少一个差异文件;
[0022] 发布模块,用于发布所述生成模块得到的所述至少一个差异文件,使客户端在发 布的至少一个差异文件中选择一个差异文件下载,并根据下载的差异文件形成所述新版本 安装包,完成增量更新。
[0023] 第三方面,提供了一种增量更新的方法,所述方法包括:
[0024] 获取历史版本安装包,并从服务器发布的差异文件中下载与所述历史版本安装包 相对应的差异文件;
[0025] 将所述历史版本安装包进行解包,得到历史版本解包文件夹,所述历史版本解包 文件夹下包括至少一个历史版本解包文件和历史版本签名子文件夹,所述历史版本签名子 文件夹下包括至少一个历史版本解包文件;
[0026]获取所述历史版本解包文件夹下的每个历史版本解包文件的头文件信息,并将每 个历史版本解包文件的头文件信息进行格式转换,得到历史版本转换文件夹;
[0027]将所述历史版本转换文件夹打包成一个历史版本档案文件包,并根据所述历史版 本档案文件包与所述差异文件获取新版本档案文件包;
[0028] 将所述新版本档案文件包进行解包,得到新版本转换文件夹;
[0029]获取所述新版本转换文件夹中的文件的头文件信息,并将所述新版本转换文件夹 中的每个文件的头文件信息进行格式转换,得到多个新版本解包文件;
[0030] 根据所述多个新版本解包文件获取新版本安装包,完成增量更新。
[0031] 第四方面,提供了一种增量更新的客户端,所述客户端包括:
[0032] 第一获取模块,用于获取历史版本安装包;
[0033] 下载模块,用于从服务器发布的差异文件中下载与所述第一获取模块获取到的所 述历史版本安装包相对应的差异文件;
[0034] 第一解包模块,用于将所述第一获取模块获取到的所述历史版本安装包进行解 包,得到历史版本解包文件夹,所述历史版本解包文件夹下包括至少一个历史版本解包文 件和历史版本签名子文件夹,所述历史版本签名子文件夹下包括至少一个历史版本解包文 件;
[0035] 第二获取模块,用于获取所述历史版本解包文件夹下的每个历史版本解包文件的 头文件fe息;
[0036] 第一转换模块,用于将每个历史版本解包文件的头文件信息进行格式转换,得到 历史版本转换文件夹;
[0037] 打包模块,用于将所述第一转换模块得到的所述历史版本转换文件夹打包成一个 历史版本档案文件包;
[0038]第三获取模块,用于根据所述历史版本档案文件包与所述差异文件获取新版本档 案文件包;
[0039] 第二解包模块,用于将所述新版本档案文件包进行解包,得到新版本转换文件 夹;
[0040] 第四获取模块,用于获取所述第二解包模块得到的所述新版本转换文件夹中的文 件的头文件彳目息;
[0041] 第二转换模块,用于将所述新版本转换文件夹中的每个文件的头文件信息进行格 式转换,得到多个新版本解包文件;
[0042] 第五获取模块,用于根据所述多个新版本解包文件获取新版本安装包,完成增量 更新。
[0043] 第五方面,提供了一种增量更新的系统,所述系统包括:服务器及客户端;
[0044] 其中,所述服务器如上述服务器,所述客户端如上述客户端。
[0045] 本发明实施例提供的技术方案带来的有益效果是:
[0046] 通过新版本安装包得到新版本解包文件夹,并将新版本解包文件夹中新版本解包 文件的头文件的格式进行格式转换,得到新版本转换文件夹,将新版本转换文件夹打包成 新版本档案文件包,再根据新版本档案文件包与历史本档案文件包生成差异文件,从而在 不破坏数据结构的情况下生成差异文件,省略了差异文件中数据结构差异的内容,减小了 差异文件的大小,进而减少了客户端下载该差异文件所付出的时间和流量。

【专利附图】

【附图说明】
[0047]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它 的附图。
[0048] 图1是本发明实施例一提供的一种增量更新的方法流程图;
[0049] 图2是本发明实施例一提供的另一种增量更新的方法流程图;
[0050] 图3是本发明实施例二提供的一种增量更新的方法流程图;
[0051] 图4是本发明实施例二提供的一种增量更新的服务器结构示意图;
[0052] 图5是本发明实施例三提供的一种转换模块结构示意图;
[0053] 图6是本发明实施例三提供的另一种增量更新的服务器结构示意图;
[0054] 图7是本发明实施例四提供的一种增量更新的客户端结构示意图;
[0055] 图8是本发明实施例四提供的一种第一转换模块结构示意图;
[0056] 图9是本发明实施例四提供的另一种增量更新的客户端结构示意图;
[0057] 图10是本发明实施例四提供的一种第二转换模块结构示意图;
[0058] 图11是本发明实施例五提供的一种増量更新的系统结构示意图;
[0059] 图12是本发明实施例六提供的一种终端的结构示意图。

【具体实施方式】
[0060] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。
[0061] 实施例一
[0062]本实施例提供了一种增量更新的方法,参见图1,本实施例提供的方法流程具体如 下:
[0063] 101 :将新版本安装包进行解包,得到新版本解包文件夹,新版本解包文件夹下包 括至少一个新版本解包文件和新版本签名子文件夹,新版本签名子文件夹下包括至少一个 新版本解包文件;
[0064] 1〇2 :获取新版本解包文件夹下的每个新版本解包文件的头文件信息,并将每个新 版本解包文件的头文件信息进行格式转换,得到新版本转换文件夹;
[0065] 1〇3 :将新版本转换文件夹打包成一个新版本档案文件包,并获取至少一个历史版 本档案文件包;
[0066] 104 :根据新版本档案文件包与每个历史版本档案文件包生成一个对应的差异文 件,得到至少一个差异文件;
[0067] 105 :发布至少一个差异文件,使客户端在发布的至少一个差异文件中选择一个差 异文件下载,并根据下载的差异文件形成新版本安装包,完成增量更新。
[0068] 本实施例还提供了另一种增量更新的方法,参见图2,本实施例提供的方法流程具 体如下:
[0069] 2〇1:获取历史版本安装包,并从服务器发布的差异文件中下载与历史版本安装包 相对应的差异文件;
[0070] 2〇2 :将历史版本安装包进行解包,得到历史版本解包文件夹,历史版本解包文件 夹下包括至少一个历史版本解包文件和历史版本签名子文件夹,历史版本签名子文件夹下 包括至少一个历史版本解包文件;
[0071] 2〇3 :获取历史版本解包文件夹下的每个历史版本解包文件的头文件信息,并将每 个历史版本解包文件的头文件信息进行格式转换,得到历史版本转换文件夹;
[0072] 204 :将历史版本转换文件夹打包成一个历史版本档案文件包,并根据历史版本档 案文件包与差异文件获取新版本档案文件包;
[0073] 205 :将新版本档案文件包进行解包,得到新版本转换文件夹;
[0074] 206 :获取新版本转换文件夹中的文件的头文件信息,并将新版本转换文件夹中的 每个文件的头文件信息进行格式转换,得到多个新版本解包文件;
[0075] 207 :根据多个新版本解包文件获取新版本安装包,完成增量更新。
[0076] 本实施例提供的方法,通过新版本安装包得到新版本解包文件夹,并将新版本解 包文件夹中新版本解包文件的头文件的格式进行格式转换,得到新版本转换文件夹,将新 版本转换文件夹打包成新版本档案文件包,再根据新版本档案文件包与历史本档案文件包 生成差异文件,从而在不破坏数据结构的情况下生成差异文件,省略了差异文件中数据结 构差异的内容,减小了差异文件的大小,进而减少了客户端下载该差异文件所付出的时间 和流量。
[0077] 为了更加清楚地阐述上述实施例提供的一种增量更新的方法,结合上述实施例的 内容,以如下实施例二为例,对一种增量更新的方法进行详细说明,详见如下实施例二:
[0078] 实施例二
[0079] 本实施例提供了一种增量更新的方法,为了便于说明,本实施例以新版本安装包 为V2. 1安装包,历史版本安装包为V2. 0安装包、VI. 0安装包为例,对本实施例提供的方法 进行详细地举例说明。参见图3,本实施例提供的方法流程具体如下:
[0080] 301 :服务器将新版本安装包进行解包,得到新版本解包文件夹,新版本解包文件 夹下包括至少一个新版本解包文件和新版本签名子文件夹,新版本签名子文件夹下包括至 少一个新版本解包文件;
[0081] 针对该步骤,包括但不限于通过解包算法将新版本安装包进行解包,本实施例不 对服务器将新版本安装包进行解包的具体解包算法进行限定。
[0082] 另外,由于安装包中包括软件安装的所有文件,因此,将新版本安装包进行解包之 后会得到新版本解包文件夹,该新版本解包文件夹下包括至少一个新版本解包文件、新版 本签名子文件夹,且新版本解包文件夹中包括的所有文件即为该软件安装的所有文件。除 此之外,新版本解包文件夹下还可以包括其它内容,本实施例不对新版本解包文件夹下包 括的具体内容进行限定。
[0083]需要说明的是,随着个性化服务的发展,为了满足不同用户对同一版本的软件的 不同更新需求,针对同一版本安装包会根据用户的不同需求而进行针对性修改,形成同一 版本安装包的变异安装包,称为渠道包。同时为了区分安装包与渠道包,以及渠道包针对的 用户,会在渠道包中固定位置添加标识文件,并在签名子文件夹中添加相应的标识参数。其 中,标识文件用于描述该渠道包的信息,例如该渠道包针对的用户,或者其它内容,本实施 例不对标识文件具体描述的信息进行限定;标识参数代表该安装包中包含标识文件,本实 施例不对标识参数的具体值进行限定。
[0084] 例如,对于V2. 1安装包,针对用户A的需求,产生V2_ 1渠道包A,在V2. 1渠道包A 中的文件夹assert下有标识文件channel, ini,在签名子文件夹manifest, mf中增加表示 V2. 1渠道包A中包含channel, ini的参数SHA1,且SHA1=1。当然,标识文件所在的位置还 可以为文件夹a,或者其它位置,本实施例不对标识文件所在的具体位置进行限定;标识文 件的文件名称及文件格式还可以为文件a. b,或者其它文件名称及文件格式,本实施例不对 标识文件的具体文件名称及具体文件格式进行限定;签名子文件夹的名称还可以为其它名 称,本实施例不对签名子文件夹的具体名称进行限定;标识参数的名称还可以为a,或者其 它名称,本实施例不对标识参数的具体名称进行限定;标识参数的具体值还可以为b,或者 其它值,本实施例不对标识参数的具体值进行限定;标识参数值可以根据渠道包与该渠道 包针对的用户的对应关系产生,还可以通过其它方式产生,本实施例不对标识参数数值的 具体产生方式进行限定。
[0085] 为了使本实施例后续步骤305中生成的差异文件既适用于渠道包也适用于安装 包,可选地,服务器将新版本安装包进行解包,得到新版本解包文件夹之后,会确定新版本 解包文件夹下的新版本解包文件中是否有作为标识文件的新版本解包文件,有作为标识文 件的新版本解包文件,则将作为标识文件的新版本解包文件从新版本解包文件夹中进行删 除。
[0086] 具体的,以上述V2. 1渠道包A为例,则对V2. 1渠道包A进行解压后得到V2. 1解包 文件夹,在V2. 1解包文件夹中assert子文件夹下有标识文件channel, ini,删除channel, ini文件。
[0087] 302 :服务器获取新版本解包文件夹下的每个新版本解包文件的头文件信息,并将 每个新版本解包文件的头文件信息进行格式转换,得到新版本转换文件夹;
[0088] 针对该步骤,每个新版本解包文件至少包括头文件,而头文件的头文件信息中至 少包括该新版本解包文件的文件长度信息、文件名长度信息、校验值信息、文件名信息和数 据内容信息,且文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容信息 均为第二预设格式。本实施例不对每个新版本解包文件包括的具体内容进行限定,本实施 例也不对头文件信息中包括的具体内容进行限定,本实施例同样不对第二预设格式的具体 格式内容进行限定。
[0089]另外,本实施例不对将每个新版本解包文件的头文件信息进行格式转换的具体转 换方法进行限定。包括但不限于通过如下两个步骤实现将每个新版本解包文件的头文件信 息进行格式转换:
[0090] 第一步:分别从每个新版本解包文件的头文件信息中提取文件长度信息、文件名 长度信息、校验值信息、文件名信息和数据内容信息;
[0091]第二步:将提取出的文件长度信息、文件名长度信息、校验值信息、文件名信息和 数据内容信息的格式分别转换成第一预设格式。
[0092] 对于第二步,本实施例不对第一预设格式的具体形式进行限定,例如表1所示的 第一预设格式。
[0093] 表 1
[0094]

【权利要求】
1. 一种增量更新的方法,其特征在于,所述方法包括: 将新版本安装包进行解包,得到新版本解包文件夹,所述新版本解包文件夹下包括至 少一个新版本解包文件和新版本签名子文件夹,所述新版本签名子文件夹下包括至少一个 新版本解包文件; 获取所述新版本解包文件夹下的每个新版本解包文件的头文件信息,并将每个新版本 解包文件的头文件信息进行格式转换,得到新版本转换文件夹; 将所述新版本转换文件夹打包成一个新版本档案文件包,并获取至少一个历史版本档 案文件包; 根据所述新版本档案文件包与每个历史版本档案文件包生成一个对应的差异文件,得 到至少一个差异文件; 发布所述至少一个差异文件,使客户端在发布的至少一个差异文件中选择一个差异文 件下载,并根据下载的差异文件形成所述新版本安装包,完成增量更新。
2. 根据权利要求1所述的方法,其特征在于,所述新版本解包文件的头文件信息至少 包括文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容信息,且均为第 二预设格式; 所述将每个新版本解包文件的头文件信息进行格式转换,包括: 分别从每个新版本解包文件的头文件信息中提取文件长度信息、文件名长度信息、校 验值信息、文件名信息和数据内容信息; 将提取出的所述文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容 信息的格式分别转换成第一预设格式。
3. 根据权利要求1所述的方法,其特征在于,所述历史版本档案文件包中包括历史版 本签名子文件夹,所述历史版本档案文件包的获取过程与所述新版本档案文件包的获取过 程相同; 所述根据所述新版本档案文件包与每个历史版本档案文件包生成一个对应的差异文 件,包括: 分别删除每个历史版本档案文件包中包括的历史版本签名子文件夹,根据所述新版本 档案文件包与删除历史版本签名子文件夹的历史版本档案文件包生成一个对应的差异文 件。
4. 根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述得到新版本解包 文件夹之后,还包括: 确定所述新版本解包文件夹下的新版本解包文件中是否有作为标识文件的新版本解 包文件; 如果有作为标识文件的新版本解包文件,则将作为标识文件的新版本解包文件从所述 新版本解包文件夹中进行删除。
5. -种增量更新的服务器,其特征在于,所述服务器包括: 解包模块,用于将新版本安装包进行解包,得到新版本解包文件夹,所述新版本解包文 件夹下包括至少一个新版本解包文件和新版本签名子文件夹,所述新版本签名子文件夹下 包括至少一个新版本解包文件; 第一获取模块,用于获取所述新版本解包文件夹下的每个新版本解包文件的头文件信 息; 转换模块,用于将每个新版本解包文件的头文件信息进行格式转换,得到新版本转换 文件夹; 打包模块,用于将所述转换模块得到的所述新版本转换文件夹打包成一个新版本档案 文件包; 第二获取模块,用于获取至少一个历史版本档案文件包; 生成模块,用于根据所述打包模块得到的所述新版本档案文件包与每个历史版本档案 文件包生成一个对应的差异文件,得到至少一个差异文件; 发布模块,用于发布所述生成模块得到的所述至少一个差异文件,使客户端在发布的 至少一个差异文件中选择一个差异文件下载,并根据下载的差异文件形成所述新版本安装 包,完成增量更新。
6. 根据权利要求5所述的服务器,其特征在于,所述新版本解包文件的头文件信息至 少包括文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容信息,且均为 第二预设格式; 所述转换模块,包括: 提取单元,用于分别从每个新版本解包文件的头文件信息中提取文件长度信息、文件 名长度信息、校验值信息、文件名信息和数据内容信息; 转换单元,用于将所述提取单元提取出的所述文件长度信息、文件名长度信息、校验值 信息、文件名信息和数据内容信息的格式分别转换成第一预设格式。
7. 根据权利要求5所述的服务器,其特征在于,所述历史版本档案文件包中包括历史 版本签名子文件夹,所述历史版本档案文件包的获取过程与所述新版本档案文件包的获取 过程相同; 所述生成模块,用于分别删除每个历史版本档案文件包中包括的历史版本签名子文件 夹,根据所述新版本档案文件包与删除历史版本签名子文件夹的历史版本档案文件包生成 一个对应的差异文件。
8. 根据权利要求5至7中任一权利要求所述的服务器,其特征在于,所述服务器,还包 括: 确定模块,用于确定所述新版本解包文件夹下的新版本解包文件中是否有作为标识文 件的新版本解包文件; 删除模块,用于当所述确定模块确定有作为标识文件的新版本解包文件时,将作为标 识文件的新版本解包文件从所述新版本解包文件夹中进行删除。
9. 一种增量更新的方法,其特征在于,所述方法包括: 获取历史版本安装包,并从服务器发布的差异文件中下载与所述历史版本安装包相对 应的差异文件; 将所述历史版本安装包进行解包,得到历史版本解包文件夹,所述历史版本解包文件 夹下包括至少一个历史版本解包文件和历史版本签名子文件夹,所述历史版本签名子文件 夹下包括至少一个历史版本解包文件; 获取所述历史版本解包文件夹下的每个历史版本解包文件的头文件信息,并将每个历 史版本解包文件的头文件信息进行格式转换,得到历史版本转换文件夹; 将所述历史版本转换文件夹打包成一个历史版本档案文件包,并根据所述历史版本档 案文件包与所述差异文件获取新版本档案文件包; 将所述新版本档案文件包进行解包,得到新版本转换文件夹; 获取所述新版本转换文件夹中的文件的头文件信息,并将所述新版本转换文件夹中的 每个文件的头文件信息进行格式转换,得到多个新版本解包文件; 根据所述多个新版本解包文件获取新版本安装包,完成增量更新。
10. 根据权利要求9所述的方法,其特征在于,所述历史版本安装包的数量为至少两 个; 所述获取历史版本安装包,包括: 获取各个历史版本安装包的版本号,并选择最大版本号对应的历史版本安装包作为获 取到的历史版本安装包。
11. 根据权利要9所述的方法,其特征在于,所述历史版本解包文件的头文件信息至少 包括文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容信息,且均为第 二预设格式; 所述将每个历史版本解包文件的头文件信息进行格式转换,得到历史版本转换文件 夹,包括: 分别从每个历史版本解包文件的头文件信息中提取文件长度信息、文件名长度信息、 校验值信息、文件名信息和数据内容信息; 将提取出的所述文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容 信息的格式分别转换成第一预设格式。
12. 根据权利要求9所述的方法,其特征在于,所述根据所述历史版本档案文件包与所 述差异文件获取新版本档案文件包,包括: 删除所述历史版本档案文件包中包括的历史版本签名子文件夹,并将删除历史版本签 名子文件夹后的历史版本档案文件包与所述差异文件合并,得到新版本档案文件包。
13. 根据权利要求9至12任一所述的方法,其特征在于,所述得到历史版本解包文件夹 之后,还包括: 确定所述历史版本解包文件夹下的历史版本解包文件中是否有作为标识文件的历史 版本解包文件; 如果有作为标识文件的历史版本解包文件,则存储所述作为标识文件的历史版本解 包文件,并将所述作为标识文件的历史版本解包文件从所述历史版本解包文件夹中进行删 除。
14. 根据权利要求9所述的方法,其特征在于,所述新版本转换文件夹中的文件的头文 件信息至少包括所述文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容 信息,且均为第一预设格式; 所述将所述新版本转换文件夹中的每个文件的头文件信息进行格式转换,包括: 分别从每个新版本转换文件夹中的文件的头文件信息中提取文件长度信息、文件名长 度信息、校验值信息、文件名信息和数据内容信息; 将提取出的所述文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容 信息的格式分别转换成第二预设格式。
15. -种增量更新的客户端,其特征在于,所述客户端包括: 第一获取模块,用于获取历史版本安装包; 下载模块,用于从服务器发布的差异文件中下载与所述第一获取模块获取到的所述历 史版本安装包相对应的差异文件; 第一解包模块,用于将所述第一获取模块获取到的所述历史版本安装包进行解包,得 到历史版本解包文件夹,所述历史版本解包文件夹下包括至少一个历史版本解包文件和历 史版本签名子文件夹,所述历史版本签名子文件夹下包括至少一个历史版本解包文件; 第二获取模块,用于获取所述历史版本解包文件夹下的每个历史版本解包文件的头文 件信息; 第一转换模块,用于将每个历史版本解包文件的头文件信息进行格式转换,得到历史 版本转换文件夹; 打包模块,用于将所述第一转换模块得到的所述历史版本转换文件夹打包成一个历史 版本档案文件包; 第三获取模块,用于根据所述历史版本档案文件包与所述差异文件获取新版本档案文 件包; 第二解包模块,用于将所述新版本档案文件包进行解包,得到新版本转换文件夹; 第四获取模块,用于获取所述第二解包模块得到的所述新版本转换文件夹中的文件的 头文件彳目息; 第二转换模块,用于将所述新版本转换文件夹中的每个文件的头文件信息进行格式转 换,得到多个新版本解包文件; 第五获取模块,用于根据所述多个新版本解包文件获取新版本安装包,完成增量更新。
16. 根据权利要求15所述的客户端,其特征在于,所述历史版本安装包的数量为至少 两个; 所述第一获取模块,用于获取各个历史版本安装包的版本号,并选择最大版本号对应 的历史版本安装包作为获取到的历史版本安装包。
17. 根据权利要15所述的客户端,其特征在于,所述历史版本解包文件的头文件信息 至少包括文件长度信息、文件名长度信息、校验值信息、文件名信息和数据内容信息,且均 为第二预设格式; 所述第一转换模块,包括: 提取单元,用于分别从每个历史版本解包文件的头文件信息中提取文件长度信息、文 件名长度信息、校验值信息、文件名信息和数据内容信息; 转换单元,用于将所述提取单元提取出的所述文件长度信息、文件名长度信息、校验值 信息、文件名信息和数据内容信息的格式分别转换成第一预设格式。
18. 根据权利要求15所述的客户端,其特征在于,所述第三获取模块,用于删除所述历 史版本档案文件包中包括的历史版本签名子文件夹,并将删除历史版本签名子文件夹后的 历史版本档案文件包与所述差异文件合并,得到新版本档案文件包。
19. 根据权利要求15至18任一所述的客户端,其特征在于,所述客户端,还包括: 确定模块,用于确定所述历史版本解包文件夹下的历史版本解包文件中是否有作为标 识文件的历史版本解包文件; 存储模块,用于当所述确定模块确定有作为标识文件的历史版本解包文件时,存储所 述作为标识文件的历史版本解包文件; 删除模块,用于将所述作为标识文件的历史版本解包文件从所述历史版本解包文件夹 中进行删除。
20. 根据权利要求15所述的客户端,其特征在于,所述新版本转换文件夹中的文件的 头文件信息至少包括所述文件长度信息、文件名长度信息、校验值信息、文件名信息和数据 内容信息,且均为第一预设格式; 所述第二转换模块,包括: 提取单元,用于分别从每个新版本转换文件夹中的文件的头文件信息中提取文件长度 信息、文件名长度信息、校验值信息、文件名信息和数据内容信息; 转换单元,用于将所述提取单元提取出的所述文件长度信息、文件名长度信息、校验值 信息、文件名信息和数据内容信息的格式分别转换成第二预设格式。
21. -种增量更新的系统,其特征在于,所述系统包括:服务器及客户端; 其中,所述服务器如权利要求5至8中任一权利要求所述的服务器,所述客户端如权利 要求15至20中任一权利要求所述的客户端。
【文档编号】G06F9/445GK104252364SQ201310256697
【公开日】2014年12月31日 申请日期:2013年6月25日 优先权日:2013年6月25日
【发明者】李洋, 唐廷勇, 李未, 王智培, 张凯, 青欣, 王曦, 刘斯睿, 杨惠姣, 黄英, 刘玉磊, 冯诚, 胡博, 周睿奕, 关磊, 贺柏森, 马宁, 李英各, 汤浩 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1