[发明专利]压缩文件动态打包方法及系统有效
申请号: | 201510042244.0 | 申请日: | 2015-01-27 |
公开(公告)号: | CN104516764B | 公开(公告)日: | 2018-01-12 |
发明(设计)人: | 程一帆;沈天乐;熊文婷 | 申请(专利权)人: | 上海携程商务有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 上海弼兴律师事务所31283 | 代理人: | 薛琦,王婧荷 |
地址: | 200335 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 压缩文件 动态 打包 方法 系统 | ||
技术领域
本发明涉及一种压缩文件动态打包方法及系统。
背景技术
现有技术在处理应用程序(例如针对apk文件、ipa文件)升级更新问题时,其基本步骤如下:
a)解压原apk文件或ipa文件,生成对应的解压缩文件;
b)修改解压后的文件内容,如开发新功能代码等;
c)打包生成新的apk文件或ipa文件;
d)重新下载新的apk文件或ipa文件。
上述方法步骤存在严重的耗时问题,解压后重新压缩打包工作量大,时间复杂度高,每个版本的应用程序的更新都需要重新下载也将占用大量时间。并且上述步骤还存在严重的资源损耗问题,不失一般性地以apk文件为例,在实际应用中,原apk文件通过上述现有技术更新生成新的apk文件后,新旧文件中的大部分内容是不变的。因此,删除原安装包,下载新安装包的过程中,大部分文件内容是不需要变更的,这样就造成了不必要的网络资源损耗。
另一方面,现在的应用程序的版本迭代更新速度较快,这就加剧了上述问题,因此亟需一种更为灵活动态的应用程序安装包更新方法,提高版本更新效率的同时,优化用户体验。
发明内容
本发明要解决的技术问题是为了克服现有技术中的应用程序文件升级更新方法存在严重的资源损耗、时间复杂度大、灵活性低的缺陷,提出一种压缩文件动态打包方法及系统。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种压缩文件动态打包方法,其特点在于,包括以下步骤:
S1、解析原始文件的目录源数据字段二进制流,根据解析结果确定原始文件的压缩算法;
S2、获取需要修改的字段在原始文件中的位置,其中需要修改的字段包括需要删除的字段和需要添加的内容;
S3、根据局部文件头的相对偏移量和目录源所记录的原始文件存储位置找到需要删除的字段对应的位置并删除需要删除的字段;
S4、采用原始文件的压缩算法压缩需要添加的内容以获得待添加内容;
S5、根据局部文件头的相对偏移量和目录源找到该待添加内容的插入位置,并添加该待添加内容;
S6、更新目录源数据字段,以形成更新后的文件。
本发明的压缩文件动态打包方法,生成包过程无需压缩,而是通过修改文件二进制流完成,而其中需要添加的内容可以为任意内容。
较佳地,原始文件的文件格式为apk格式或ipa格式。
较佳地,原始文件为应用程序安装包。
较佳地,需要添加的内容为图片或者文字。
本发明还提供了一种压缩文件动态打包系统,其特点在于,包括:
一解析模块,用于解析原始文件的目录源数据字段二进制流,根据解析结果确定原始文件的压缩算法;
一修改字段定位模块,用于确定需要修改的字段在原始文件中的位置,其中需要修改的字段包括需要删除的字段和需要添加的内容;
一字段删除模块,用于根据局部文件头的相对偏移量和目录源所记录的原始文件存储位置找到需要删除的字段对应的位置并删除需要删除的字段;
一添加模块,用于采用原始文件的压缩算法压缩需要添加的内容以获得待添加内容,然后根据局部文件头的相对偏移量和目录源找到该待添加内容的插入位置,并添加该待添加内容;
一更新模块,用于更新目录源数据字段,以形成更新后的文件。
较佳地,原始文件的文件格式为apk格式或ipa格式。
较佳地,原始文件为应用程序安装包。
较佳地,需要添加的内容为图片或文字。
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:
本发明的压缩文件动态打包方法及系统能更快速高效地完成应用程序文件的升级更新,相较于传统方法更为节省网络资源,并且能够实现动态更新,灵活性也更高。
附图说明
图1为本发明实施例1的压缩文件动态打包方法的流程图。
图2为本发明实施例2的压缩文件动态打包系统的示意图。
具体实施方式
下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
如图1所示,本实施例的压缩文件动态打包方法包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海携程商务有限公司,未经上海携程商务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510042244.0/2.html,转载请声明来源钻瓜专利网。