[发明专利]差分包生成方法及相关设备在审
申请号: | 202010144853.8 | 申请日: | 2020-03-04 |
公开(公告)号: | CN111522574A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 李桃 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F8/658 | 分类号: | G06F8/658;G06F16/903 |
代理公司: | 深圳市赛恩倍吉知识产权代理有限公司 44334 | 代理人: | 刘丽华;孙芬 |
地址: | 518000 广东省深圳市福田区福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分包 生成 方法 相关 设备 | ||
本发明提供了一种差分包生成方法及相关设备。所述方法获取待升级软件的老文件和新文件;将所述老文件划分为多个第一字符串,将所述多个第一字符串按照在所述老文件中的顺序组合为第一字符串组;将所述新文件划分为多个第二字符串,将所述多个第二字符串按照在所述新文件中的顺序组合为第二字符串组;将所述第二字符串组中的每个第二字符串的相似字符串在所述第一字符串组中的序号组合为序号数组;计算所述第二字符串组中的每个第二字符串与该第二字符串在所述第一字符串组中的相似字符串的差值,将所述第二字符串组中的每个第二字符串对应的差值组合为差值数组;将所述序号数组和所述差值数组压缩为差分包。本发明提升了生成差分包的效率。
技术领域
本发明涉及软件升级技术领域,具体涉及一种差分包生成方法、装置、计算机装置及计算机存储介质。
背景技术
差分升级是电子设备软件升级的一种主要方式。用差分升级方法升级软件的主要过程为:计算出待升级软件的新文件和老文件的不同部分,将不同部分打包压缩成差分包(即升级补丁),将差分包发送给电子设备,电子设备将差分包和待升级软件的老文件合并成新文件。然而,现有的差分包生成算法生成的差分包较大,生成差分包耗费的时间较长。
发明内容
鉴于以上内容,有必要提出一种差分包生成方法、装置、计算机装置及计算机存储介质,其可以生成用于软件升级的差分包。
本申请的第一方面提供一种差分包生成方法,所述方法包括:
获取待升级软件的老文件和新文件,所述老文件和所述新文件为文本文件;
根据所述老文件中的分隔符将所述老文件划分为多个第一字符串,将所述多个第一字符串按照在所述老文件中的顺序组合为第一字符串组;
根据所述新文件中的分隔符将所述新文件划分为多个第二字符串,将所述多个第二字符串按照在所述新文件中的顺序组合为第二字符串组;
从所述第一字符串组中查找所述第二字符串组中的每个第二字符串的相似字符串,将所述第二字符串组中的每个第二字符串的相似字符串在所述第一字符串组中的序号组合为序号数组;
计算所述第二字符串组中的每个第二字符串与该第二字符串在所述第一字符串组中的相似字符串的差值,将所述第二字符串组中的每个第二字符串对应的差值组合为差值数组;
将所述序号数组和所述差值数组压缩为差分包。
另一种可能的实现方式中,所述将所述多个第一字符串按照在所述老文件中的顺序组合为第一字符串组包括:
删除所述多个第一字符串中重复的第一字符串,得到多个去重后的第一字符串;
将所述多个去重后的第一字符串按照在所述老文件中的顺序组合为所述第一字符串组。
另一种可能的实现方式中,所述从所述第一字符串组中查找所述第二字符串组中的每个第二字符串的相似字符串包括:
对于所述第二字符串组中的任意一个第二字符串Ai,确定第二字符串Ai包含的字符的数量mi,确定第二字符串Ai的各个字符aix,x=0,1,2,…,mi-1;
对于所述第一字符串组中的任意一个第一字符串Bj,确定第一字符串Bj包含的字符的数量nj,确定第一字符串bj的各个字符bjy,y=0,1,2,…,nj-1;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010144853.8/2.html,转载请声明来源钻瓜专利网。