CN109582323A - 应用安装包的增量更新方法、装置、终端及服务器 - Google Patents

应用安装包的增量更新方法、装置、终端及服务器 Download PDF

Info

Publication number
CN109582323A
CN109582323A CN201811407891.7A CN201811407891A CN109582323A CN 109582323 A CN109582323 A CN 109582323A CN 201811407891 A CN201811407891 A CN 201811407891A CN 109582323 A CN109582323 A CN 109582323A
Authority
CN
China
Prior art keywords
data
installation package
application installation
group
binary data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811407891.7A
Other languages
English (en)
Inventor
高杰
黄文杰
谷刚
邓伟成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201811407891.7A priority Critical patent/CN109582323A/zh
Publication of CN109582323A publication Critical patent/CN109582323A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种应用安装包的增量更新方法、装置、终端及服务器。该方法包括:从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;获取本地存储的应用安装包;采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。本发明解决了相关技术中所提供的应用安装包更新方式不但增加了管理多个CPS包的成本,而且在版本更新时容易给用户带来时间上和网络流量上的损失的技术问题。

Description

应用安装包的增量更新方法、装置、终端及服务器
技术领域
本发明涉及计算机领域,具体而言,涉及一种应用安装包的增量更新方法、装置、终端及服务器。
背景技术
目前,在安卓系统上,在对一款应用(APP)进行安卓安装包(APK)升级时,如果执行完整APK的更新操作,那么用户便需要下载完整的APK包,其消耗的网络流量与时间成本将大幅地增加,从而在应用版本升级时易增大用户流失率。如果将该APP升级所需的完整APK包同时分发到多个商品推广解决方案(CPS)渠道(即多个推广游戏的平台),那么在每次执行升级操作的过程中,需要打包多个不同的CPS包(其内容与APK基本相同,区别在于:用于区分官网下发的APK包与特定CPS包的字段不同)。每个CPS包需要经过对官网下发的数据包进行解压、反编译、写入APPchannel、重签、生成APK流程,消耗的时间成本也将会大幅增加,同时当这些CPS包如果需要进行APK升级时,则会带来大量的时间成本和数据包的维护成本。
目前对于这种情况,某些应用主要对官网包和CPS包进行单独的APK管理以及更新,更新方式有些直接使用的是完整包更新。例如:一个APP最新发布了2.0版本,同时这个APP已接入5个渠道,那么在该APP生成APK时便需要生成一个官网包和5个CPS包,同时每个数据包的升级也需要进行单独维护,以及在升级过程中下载的升级包也需要单独地生成与维护。这样,不但增加了管理多个CPS包的成本,而且在版本更新时容易给用户带来时间上和网络流量上的损失。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明至少部分实施例提供了一种应用安装包的增量更新方法、装置、终端及服务器,以至少解决相关技术中所提供的应用安装包更新方式不但增加了管理多个CPS包的成本,而且在版本更新时容易给用户带来时间上和网络流量上的损失的技术问题。
根据本发明其中一实施例,提供了一种应用安装包的增量更新方法,包括:
从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;获取本地存储的应用安装包;采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
可选地,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包包括:从本地存储的应用安装包中去除与预设空闲字段对应的部分数据,得到第三组二进制数据,其中,部分数据包括:与本地存储的应用安装包对应的第二渠道信息;将补丁数据包与第三组二进制数据进行合并,生成第四组二进制数据;将部分数据重新写入至第四组二进制数据,得到更新后的应用安装包。
可选地,在采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包之后,包括:将更新后的应用安装包存储在本地预设目录;调用本地操作系统中预设的安装方式从本地预设目录读取并安装更新后的应用安装包。
可选地,预设空闲字段为zip comment字段,预设空闲字段的总长度为固定长度。
根据本发明其中一实施例,还提供了另一种应用安装包的增量更新方法,包括:
从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
可选地,在从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据之前,还包括:将与补丁数据包对应的渠道信息写入至预设空闲字段。
可选地,对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包包括:对第一组二进制数据与第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,索引控制信息为差异数据和新增数据相对于终端本地存储的应用安装包的更新位置标记;将差异数据、新增数据以及索引控制信息压缩成补丁数据包。
根据本发明其中一实施例,提供了一种应用安装包的增量更新装置,包括:
下载模块,用于从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;获取模块,用于获取本地存储的应用安装包;更新模块,用于采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
可选地,更新模块包括:处理单元,用于从本地存储的应用安装包中去除与预设空闲字段对应的部分数据,得到第三组二进制数据,其中,部分数据包括:与本地存储的应用安装包对应的第二渠道信息;合并单元,用于将补丁数据包与第三组二进制数据进行合并,生成第四组二进制数据;写入单元,用于将部分数据重新写入至第四组二进制数据,得到更新后的应用安装包。
可选地,上述装置还包括:存储模块,用于将更新后的应用安装包存储在本地预设目录;调用模块,用于调用本地操作系统中预设的安装方式从本地预设目录读取并安装更新后的应用安装包。
可选地,预设空闲字段为zip comment字段,预设空闲字段的总长度为固定长度。
根据本发明其中一实施例,还提供了另一种应用安装包的增量更新装置,包括:
第一处理模块,用于从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;第二处理模块,用于对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;下发模块,用于响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
可选地,上述装置还包括:写入模块,用于将与补丁数据包对应的渠道信息写入至预设空闲字段。
可选地,第二处理模块包括:第一处理单元,用于对第一组二进制数据与第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,索引控制信息为差异数据和新增数据相对于终端本地存储的应用安装包的更新位置标记;第二处理单元,用于将差异数据、新增数据以及索引控制信息压缩成补丁数据包。
根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的应用安装包的增量更新方法。
根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述任意一项的应用安装包的增量更新方法。
根据本发明其中一实施例,还提供了一种终端,包括:一个或多个处理器,存储器以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序用于执行上述任意一项的应用安装包的增量更新方法。
根据本发明其中一实施例,还提供了一种服务器,包括:一个或多个处理器,存储器以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序用于执行上述任意一项的应用安装包的增量更新方法。
在本发明至少部分实施例中,采用从服务器下载补丁数据包,该补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,该预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息的方式,通过获取本地存储的应用安装包以及采用补丁数据包对本地存储的应用安装包进行增量更新以得到更新后的应用安装包,由此通过应用安装包(例如:APK)增量更新以减少APK更新时补丁数据包大小,同时由于APK实质上是一个zip包,其满足zip包的格式,由此可以将官网包和CPS包的渠道信息写入到预设字段(例如:zip comment字段)中,从而降低在生成CPS包过程中的时间成本,另外对于不同的CPS包的APK增量升级,实现了对官网包进行一次差分,其生成的差分包可以满足所有的CPS包的增量更新,从而不再需要对所有的CPS包单独进行差分以及维护工作,进而解决了相关技术中所提供的应用安装包更新方式不但增加了管理多个CPS包的成本,而且在版本更新时容易给用户带来时间上和网络流量上的损失的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明其中一实施例的一种应用安装包的增量更新方法的流程图;
图2是根据本发明其中一实施例的另一种应用安装包的增量更新方法的流程图;
图3是根据本发明其中一可选实施例的应用安装包增量更新过程的示意图;
图4是根据本发明其中一实施例的一种应用安装包的增量更新装置的结构框图;
图5是根据本发明其中一可选实施例的一种应用安装包的增量更新装置的结构框图;
图6是根据本发明其中一实施例的另一种应用安装包的增量更新装置的结构框图;
图7是根据本发明其中一可选实施例的另一种应用安装包的增量更新装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明其中一实施例,提供了一种应用安装包的增量更新方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在由移动终端和服务器构成的应用安装包的增量更新系统中执行。以运行在移动终端上为例,移动终端可以包括一个或多个处理器(处理器可以包括但不限于微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置)和用于存储数据的存储器。可选地,上述移动终端还可以包括用于通信功能的传输装置以及输入输出设备。本领域普通技术人员可以理解,上述结构描述仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比上述结构描述更多或者更少的组件,或者具有与上述结构描述不同的配置。
存储器可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的应用安装包的增量更新方法对应的计算机程序,处理器通过运行存储在存储器内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的应用安装包的增量更新方法。存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述移动终端的应用安装包的增量更新方法,图1是根据本发明其中一实施例的一种应用安装包的增量更新方法的流程图,如图1所示,该方法包括如下步骤:
步骤S12,从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;
步骤S14,获取本地存储的应用安装包;
步骤S16,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
通过上述步骤,可以采用从服务器下载补丁数据包,该补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,该预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息的方式,通过获取本地存储的应用安装包以及采用补丁数据包对本地存储的应用安装包进行增量更新以得到更新后的应用安装包,由此通过应用安装包(例如:APK)增量更新以减少APK更新时补丁数据包大小,同时由于APK实质上是一个zip包,其满足zip包的格式,由此可以将官网包和CPS包的渠道信息写入到预设字段(例如:zipcomment字段)中,从而降低在生成CPS包过程中的时间成本,另外对于不同的CPS包的APK增量升级,实现了对官网包进行一次差分,其生成的差分包可以满足所有的CPS包的增量更新,从而不再需要对所有的CPS包单独进行差分以及维护工作,进而解决了相关技术中所提供的应用安装包更新方式不但增加了管理多个CPS包的成本,而且在版本更新时容易给用户带来时间上和网络流量上的损失的技术问题。
可选地,在步骤S16中,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包可以包括以下执行步骤:
步骤S161,从本地存储的应用安装包中去除与预设空闲字段对应的部分数据,得到第三组二进制数据,其中,部分数据包括:与本地存储的应用安装包对应的第二渠道信息;
步骤S162,将补丁数据包与第三组二进制数据进行合并,生成第四组二进制数据;
步骤S163,将部分数据重新写入至第四组二进制数据,得到更新后的应用安装包。
在对新版本的APK整包进行合包处理的过程中,合包原理是利用data/data/APP目录中的原始包和下载的patch包使用bspatch算法合成一个新的APK整包。具体地,首先分别从服务器下载补丁数据包以及读取安卓系统中data/data/APP路径下的APK数据包,通过使用bspatch算法将两者进行合并以生成新版APK并将其存储至sdcard中;然后再调用安卓系统方法安装新版APK。
可选地,在步骤S16,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包之后,可以包括以下执行步骤:
步骤S17,将更新后的应用安装包存储在本地预设目录;
步骤S18,调用本地操作系统中预设的安装方式从本地预设目录读取并安装更新后的应用安装包。
在APK安装过程中,由于用户对安卓系统data/data/APP目录(即上述本地预设目录)通常只具备只读权限,因此,最终可以采用唤起android系统安装页面来安装新的APK包。
可选地,上述预设空闲字段为zip comment字段,该预设空闲字段的总长度为固定长度。
APK包实质是一个zip包,其满足zip包的相关格式,一个完整的zip包的文件结构的末尾部分包括:comment length和comment两个字段。在通常情况下,comment部分为空,而comment length存储的数据为comment的字节长度,占2bytes。安卓系统验证包通常不会验证zip comment字段,因此,在此处进行修改并不会影响APK包的正常安装。
相比于相关技术中通常将APPchannel(用于区分APK属于特定渠道的标识)写入到APK内的文件中,由此易导致不同APK的二进制数据完全不同,从而无法使得一个差分包能够应用于所有的CPS包和官网包。为此,在本发明的一个可选实施例中,在采用计费生成CPS包的过程中,只需将APP_channel写入到zip comment字段中,且规定新的zip comment总长度为固定为128个字节,具体格式为:
{comment总长度:2byte}{渠道长度2byte}{渠道信息nbyte}{dummy string}{dummy string length}NETEASE;
其中,由于将zip comment字段的长度固定为128个字节,然后,渠道信息可能不需要这么长的字节,因此,需要写入特定占位符,Dummy string表示占位符目前写入的是0,Dummy string length表示写入占位符的个数。
这样,通过将APPchannel写入到zip comment字段中,便是为了使得所有包二进制数据的差异控制在zip comment字段中(即二进制数据末尾的128个字节),因此,所有包除去最后zip comment字段以外的剩余二进制数据将会完全一致。
终端在对CPS包和官网包进行APK升级过程中,首先需要读取本地APK的二进制数据,去除末尾的zip comment字段(即二进制数据末尾的128个字节);然后,再使用bspatch算法与patch包进行合并,最后将本地APK的zip comment字段写入到合并后的二进制数据末尾,由此生成一个最终的APK。该APK的二进制数据不仅升级到最新版本的二进制数据,而且还保留了CPS包的APP channel信息,从而使得用户在升级APK后,该APK的渠道标记仍然保持不变,达到一次差分应用于所有CPS包和官网包。例如:用户是从应用包渠道下载的APK,其渠道标记为:yingyongbao,而在用户进行APK升级之后,通过保留其APPchannel信息,这样用户升级到新版本后,其渠道标记仍然为yingyongbao。
由于代码逻辑内需要获取该APK的渠道信息,而APK在android系统上安装后通常存放在data/data目录下,因此,如果希望获取渠道信息,则通过读取APK的zipcomment字段(即二进制数据末尾的128个字节),便可获取到渠道信息。故而,在业务读取渠道号时,可以读取data/APP/.APK文件末尾的渠道号。
在本实施例中提供了一种运行于上述服务器的应用安装包的增量更新方法,图2是根据本发明其中一实施例的另一种应用安装包的增量更新方法的流程图,如图2所示,该方法包括如下步骤:
步骤S22,从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;
步骤S24,对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;
步骤S26,响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
如果后台服务器需要对官网包APK进行差分处理,则首先读取两个APK(即线上旧版APK与即将发布的新版APK)的二进制数据,并去除末尾的zip comment字段(即二进制数据末尾的128个字节);然后,再使用bsdiff算法对两个APK的二进制数据进行差分处理,生成patch包。该patch包将可以应用于官网包和所有的CPS包升级。
可选地,在步骤S22,从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据之前,还可以包括以下执行步骤:
步骤S21,将与补丁数据包对应的渠道信息写入至预设空闲字段。
服务器将APP channel写入到zip comment字段中是为了将所有包的二进制数据的差异均控制在zip comment字段中,这样所有包在除去最后zip comment字段的剩余二进制数据便会保持完全一致。
可选地,在步骤S24中,对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包可以包括以下执行步骤:
步骤S241,对第一组二进制数据与第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,索引控制信息为差异数据和新增数据相对于终端本地存储的应用安装包的更新位置标记;
步骤S242,将差异数据、新增数据以及索引控制信息压缩成补丁数据包。
APK差分更新的原理在于:采用bsdiff算法将旧版文件与新版文件之间的差异生成补丁(patch)文件,然后在合包处理过程中通过copy和insertion指令来生成新包,其能够保证合成的包完全一致,最后实现本地重新安装合成的新版APK。
在生成APK差分包的过程中,可以通过bsdiff算法在用于对APK进行差分的服务器分别针对不同的APK包生成差分包,其具体原理如下:
通过对新的APK二进制文件和线上运行的各版本APK二进制文件进行比较,生成差异文件和新增文件(extra file)。然后,再将差异文件,新增文件以及必要的索引控制信息(即,用于进行最终合包时,标记升级包的数据需要添加到旧版APK的具体位置的标记)压缩为差异更新包(即patch包)。
下面将结合图3所示的示例性实施例对上述可选实施方式做进一步描述。
图3是根据本发明其中一可选实施例的应用安装包增量更新过程的示意图,如图3所示,假设当前APK版本包括:1个官网包和5个CPS包,线上版本为1.0,即将发布的升级版本为2.0,那么其实际操作过程如下:
第一步、首先从官网包2.0版本(即上述第一版本)的APK中去除zip comment字段,得到剩余的第一组二进制数据,以及从官网包1.0版本(即上述第二版本)的APK中去除zipcomment字段,得到剩余的第二组二进制数据;然后再将剩余的两组二进制数据(这部分数据对于所有的CPS包而言均相同)进行bsdiff差分处理,生成差分包patch(即上述补丁数据包,其对应官网包的一次差分)。
第二步、用户在升级过程中,首先需要下载差分包patch;其次读取终端内1.0版本的APK(即上述本地存储的应用安装包,该终端内可以安装任意CPS包或官网包)的数据,获取去掉zip comment字段后的二进制数据,得到剩余的第三组二进制数据;然后再将第三组二进制数据与差分包patch进行合并,从而生成新的第四组二进制数据;然后再将去掉的zip comment字段数据写入至新生成的第四组二进制数据末尾,最终生成新版本的APK(即上述更新后的应用安装包),由此实现一次差分应用于所有的CPS包升级。
综上所述,服务器通过使用bsdiff算法对APK进行二进制差分处理,生成差分包;然后,在进行APK升级时,移动终端通过使用bspatch算法将data/data/APP下面的原始包和生成的差分包进行合并来升级到最新的APK版本,从而减少升级包的大小,降低版本升级时用户流失率。同时,对大量CPS包的生成采用将APPchannel信息写入到APK的zip comment字段中,从而解决生成CPS包所消耗的时间,同时完成对CPS包的APK差分升级,由此实现将一次官网包的差分应用于所有的CPS包升级,其操作复杂度从原有的O(n)变成为O(1),进而降低由大量CPS包的差分所带来的时间成本与维护成本。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种应用安装包的增量更新装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明其中一实施例的一种应用安装包的增量更新装置的结构框图,如图4所示,该装置包括:下载模块10,用于从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;获取模块20,用于获取本地存储的应用安装包;更新模块30,用于采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
可选地,更新模块30包括:处理单元(图中未示出),用于从本地存储的应用安装包中去除与预设空闲字段对应的部分数据,得到第三组二进制数据,其中,部分数据包括:与本地存储的应用安装包对应的第二渠道信息;合并单元(图中未示出),用于将补丁数据包与第三组二进制数据进行合并,生成第四组二进制数据;写入单元(图中未示出),用于将部分数据重新写入至第四组二进制数据,得到更新后的应用安装包。
图5是根据本发明其中一可选实施例的一种应用安装包的增量更新装置的结构框图,如图5所示,该装置除包括图4所示的所有模块外,还包括:存储模块40,用于将更新后的应用安装包存储在本地预设目录;调用模块50,用于调用本地操作系统中预设的安装方式从本地预设目录读取并安装更新后的应用安装包。
可选地,预设空闲字段为zip comment字段,预设空闲字段的总长度为固定长度。
图6是根据本发明其中一实施例的另一种应用安装包的增量更新装置的结构框图,如图6所示,该装置包括:第一处理模块60,用于从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;第二处理模块70,用于对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;下发模块80,用于响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
可选地,图7是根据本发明其中一可选实施例的另一种应用安装包的增量更新装置的结构框图,如图7所示,该装置除包括图6所示的所有模块外,还包括:上述装置还包括:写入模块90,用于将与补丁数据包对应的渠道信息写入至预设空闲字段。
可选地,第二处理模块70包括:第一处理单元(图中未示出),用于对第一组二进制数据与第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,索引控制信息为差异数据和新增数据相对于终端本地存储的应用安装包的更新位置标记;第二处理单元(图中未示出),用于将差异数据、新增数据以及索引控制信息压缩成补丁数据包。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;
S2,获取本地存储的应用安装包;
S3,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
可选地,存储介质还被设置为存储用于执行以下步骤的计算机程序:
S1,从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;
S2,对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;
S3,响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种处理器,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,从服务器下载补丁数据包,其中,补丁数据包是由服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,第一版本晚于第二版本,第一组二进制数据是从第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,第二组二进制数据是从第二版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,预设空闲字段中携带的数据包括:与补丁数据包对应的第一渠道信息;
S2,获取本地存储的应用安装包;
S3,采用补丁数据包对本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
可选地,在本实施例中,上述处理器还可以被设置为通过计算机程序执行以下步骤:
S1,从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除预设空闲字段中携带的数据,得到第二组二进制数据,其中,第一版本晚于第二版本,预设空闲字段中携带的数据包括:渠道信息;
S2,对第一组二进制数据与第二组二进制数据进行差分处理,得到补丁数据包;
S3,响应终端发起的下载请求,将补丁数据包下发至终端,以使终端采用补丁数据包对终端本地存储的应用安装包进行增量更新。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (18)

1.一种应用安装包的增量更新方法,其特征在于,包括:
从服务器下载补丁数据包,其中,所述补丁数据包是由所述服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,所述第一版本晚于所述第二版本,所述第一组二进制数据是从所述第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,所述第二组二进制数据是从所述第二版本的应用安装包中去除所述预设空闲字段中携带的数据后得到的数据,所述预设空闲字段中携带的数据包括:与所述补丁数据包对应的第一渠道信息;
获取本地存储的应用安装包;
采用所述补丁数据包对所述本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
2.根据权利要求1所述的方法,其特征在于,采用所述补丁数据包对所述本地存储的应用安装包进行增量更新,得到所述更新后的应用安装包包括:
从所述本地存储的应用安装包中去除与所述预设空闲字段对应的部分数据,得到第三组二进制数据,其中,所述部分数据包括:与所述本地存储的应用安装包对应的第二渠道信息;
将所述补丁数据包与所述第三组二进制数据进行合并,生成第四组二进制数据;
将所述部分数据重新写入至所述第四组二进制数据,得到所述更新后的应用安装包。
3.根据权利要求1所述的方法,其特征在于,在采用所述补丁数据包对所述本地存储的应用安装包进行增量更新,得到所述更新后的应用安装包之后,包括:
将所述更新后的应用安装包存储在本地预设目录;
调用本地操作系统中预设的安装方式从所述本地预设目录读取并安装所述更新后的应用安装包。
4.根据权利要求1所述的方法,其特征在于,所述预设空闲字段为zip comment字段,所述预设空闲字段的总长度为固定长度。
5.一种应用安装包的增量更新方法,其特征在于,包括:
从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除所述预设空闲字段中携带的数据,得到第二组二进制数据,其中,所述第一版本晚于所述第二版本,所述预设空闲字段中携带的数据包括:渠道信息;
对所述第一组二进制数据与所述第二组二进制数据进行差分处理,得到补丁数据包;
响应终端发起的下载请求,将所述补丁数据包下发至所述终端,以使所述终端采用所述补丁数据包对所述终端本地存储的应用安装包进行增量更新。
6.根据权利要求5所述的方法,其特征在于,在从所述第一版本的应用安装包中去除所述预设空闲字段中携带的数据,得到所述第一组二进制数据,以及从所述第二版本的应用安装包中去除所述预设空闲字段中携带的数据,得到所述第二组二进制数据之前,还包括:
将与所述补丁数据包对应的所述渠道信息写入至所述预设空闲字段。
7.根据权利要求5所述的方法,其特征在于,对所述第一组二进制数据与所述第二组二进制数据进行差分处理,得到所述补丁数据包包括:
对所述第一组二进制数据与所述第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,所述索引控制信息为所述差异数据和所述新增数据相对于所述终端本地存储的应用安装包的更新位置标记;
将所述差异数据、所述新增数据以及所述索引控制信息压缩成所述补丁数据包。
8.一种应用安装包的增量更新装置,其特征在于,包括:
下载模块,用于从服务器下载补丁数据包,其中,所述补丁数据包是由所述服务器通过将第一版本的应用安装包中的第一组二进制数据与第二版本的应用安装包中的第二组二进制数据进行差分处理后得到的数据包,所述第一版本晚于所述第二版本,所述第一组二进制数据是从所述第一版本的应用安装包中去除预设空闲字段中携带的数据后得到的数据,所述第二组二进制数据是从所述第二版本的应用安装包中去除所述预设空闲字段中携带的数据后得到的数据,所述预设空闲字段中携带的数据包括:与所述补丁数据包对应的第一渠道信息;
获取模块,用于获取本地存储的应用安装包;
更新模块,用于采用所述补丁数据包对所述本地存储的应用安装包进行增量更新,得到更新后的应用安装包。
9.根据权利要求8所述的装置,其特征在于,所述更新模块包括:
处理单元,用于从所述本地存储的应用安装包中去除与所述预设空闲字段对应的部分数据,得到第三组二进制数据,其中,所述部分数据包括:与所述本地存储的应用安装包对应的第二渠道信息;
合并单元,用于将所述补丁数据包与所述第三组二进制数据进行合并,生成第四组二进制数据;
写入单元,用于将所述部分数据重新写入至所述第四组二进制数据,得到所述更新后的应用安装包。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
存储模块,用于将所述更新后的应用安装包存储在本地预设目录;
调用模块,用于调用本地操作系统中预设的安装方式从所述本地预设目录读取并安装所述更新后的应用安装包。
11.根据权利要求8所述的装置,其特征在于,所述预设空闲字段为zip comment字段,所述预设空闲字段的总长度为固定长度。
12.一种应用安装包的增量更新装置,其特征在于,包括:
第一处理模块,用于从第一版本的应用安装包中去除预设空闲字段中携带的数据,得到第一组二进制数据,以及从第二版本的应用安装包中去除所述预设空闲字段中携带的数据,得到第二组二进制数据,其中,所述第一版本晚于所述第二版本,所述预设空闲字段中携带的数据包括:渠道信息;
第二处理模块,用于对所述第一组二进制数据与所述第二组二进制数据进行差分处理,得到补丁数据包;
下发模块,用于响应终端发起的下载请求,将所述补丁数据包下发至所述终端,以使所述终端采用所述补丁数据包对所述终端本地存储的应用安装包进行增量更新。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
写入模块,用于将与所述补丁数据包对应的所述渠道信息写入至所述预设空闲字段。
14.根据权利要求12所述的装置,其特征在于,所述第二处理模块包括:
第一处理单元,用于对所述第一组二进制数据与所述第二组二进制数据进行差分处理,得到差异数据、新增数据以及索引控制信息,其中,所述索引控制信息为所述差异数据和所述新增数据相对于所述终端本地存储的应用安装包的更新位置标记;
第二处理单元,用于将所述差异数据、所述新增数据以及所述索引控制信息压缩成所述补丁数据包。
15.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至4或权利要求5至7中任意一项所述的应用安装包的增量更新方法。
16.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至4或权利要求5至7中任意一项所述的应用安装包的增量更新方法。
17.一种终端,其特征在于,包括:一个或多个处理器,存储器以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序用于执行权利要求1至4中任意一项所述的应用安装包的增量更新方法。
18.一种服务器,其特征在于,包括:一个或多个处理器,存储器以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序用于执行权利要求5至7中任意一项所述的应用安装包的增量更新方法。
CN201811407891.7A 2018-11-23 2018-11-23 应用安装包的增量更新方法、装置、终端及服务器 Pending CN109582323A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811407891.7A CN109582323A (zh) 2018-11-23 2018-11-23 应用安装包的增量更新方法、装置、终端及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811407891.7A CN109582323A (zh) 2018-11-23 2018-11-23 应用安装包的增量更新方法、装置、终端及服务器

Publications (1)

Publication Number Publication Date
CN109582323A true CN109582323A (zh) 2019-04-05

Family

ID=65923838

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811407891.7A Pending CN109582323A (zh) 2018-11-23 2018-11-23 应用安装包的增量更新方法、装置、终端及服务器

Country Status (1)

Country Link
CN (1) CN109582323A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110633090A (zh) * 2019-08-14 2019-12-31 华为技术有限公司 补丁方法、相关装置及系统
CN110719328A (zh) * 2019-10-09 2020-01-21 广州粒子微电子有限公司 一种下载程序的方法
CN111221559A (zh) * 2019-11-05 2020-06-02 北京达佳互联信息技术有限公司 应用更新方法、装置、存储介质、终端及服务器
CN111352633A (zh) * 2020-02-24 2020-06-30 腾讯科技(深圳)有限公司 应用程序的资源下载方法、装置、终端及存储介质
CN111459531A (zh) * 2020-04-21 2020-07-28 广州虎牙科技有限公司 应用程序升级方法、装置、电子设备及存储介质
CN111651188A (zh) * 2020-06-01 2020-09-11 上海艾拉比智能科技有限公司 差分包的数据结果确定方法、装置、设备及存储介质
WO2021027613A1 (zh) * 2019-08-14 2021-02-18 华为技术有限公司 一种补丁发布的方法、服务器及终端设备
CN112416386A (zh) * 2020-10-26 2021-02-26 北京一亩田新农网络科技有限公司 软件升级的方法、装置、系统以及介质
WO2021097758A1 (zh) * 2019-11-21 2021-05-27 深圳市欢太科技有限公司 一种增量包生成方法、增量包生成装置及服务器
WO2021128269A1 (zh) * 2019-12-27 2021-07-01 深圳市欢太科技有限公司 文件处理方法、文件处理装置、移动终端及服务器
CN113312073A (zh) * 2021-06-15 2021-08-27 上海益世界信息技术集团有限公司广州分公司 一种安装包文件处理方法和相关装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160004530A1 (en) * 2012-12-27 2016-01-07 Guangzhou Ucweb Computer Technology Co., Ltd Incremental upgrade method, apparatus for applying method and storage medium
CN105718276A (zh) * 2014-12-02 2016-06-29 北京奇虎科技有限公司 提供apk下载的方法和装置以及nginx服务器
CN106354525A (zh) * 2016-08-11 2017-01-25 深圳市宜搜科技发展有限公司 应用软件安装包差分存储方法及系统
CN107797818A (zh) * 2017-03-28 2018-03-13 平安壹钱包电子商务有限公司 应用程序升级方法及装置
CN108415722A (zh) * 2018-03-13 2018-08-17 平安普惠企业管理有限公司 渠道应用的更新方法、装置、计算机设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160004530A1 (en) * 2012-12-27 2016-01-07 Guangzhou Ucweb Computer Technology Co., Ltd Incremental upgrade method, apparatus for applying method and storage medium
CN105718276A (zh) * 2014-12-02 2016-06-29 北京奇虎科技有限公司 提供apk下载的方法和装置以及nginx服务器
CN106354525A (zh) * 2016-08-11 2017-01-25 深圳市宜搜科技发展有限公司 应用软件安装包差分存储方法及系统
CN107797818A (zh) * 2017-03-28 2018-03-13 平安壹钱包电子商务有限公司 应用程序升级方法及装置
CN108415722A (zh) * 2018-03-13 2018-08-17 平安普惠企业管理有限公司 渠道应用的更新方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
QQ音乐技术团队: "全民 K 歌增量升级方案", 《HTTPS://CLOUD.TENCENT.COM/DEVELOPER/ARTICLE/1032327》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021027613A1 (zh) * 2019-08-14 2021-02-18 华为技术有限公司 一种补丁发布的方法、服务器及终端设备
CN110633090A (zh) * 2019-08-14 2019-12-31 华为技术有限公司 补丁方法、相关装置及系统
CN110719328A (zh) * 2019-10-09 2020-01-21 广州粒子微电子有限公司 一种下载程序的方法
CN111221559A (zh) * 2019-11-05 2020-06-02 北京达佳互联信息技术有限公司 应用更新方法、装置、存储介质、终端及服务器
CN111221559B (zh) * 2019-11-05 2024-05-14 北京达佳互联信息技术有限公司 应用更新方法、装置、存储介质、终端及服务器
WO2021097758A1 (zh) * 2019-11-21 2021-05-27 深圳市欢太科技有限公司 一种增量包生成方法、增量包生成装置及服务器
WO2021128269A1 (zh) * 2019-12-27 2021-07-01 深圳市欢太科技有限公司 文件处理方法、文件处理装置、移动终端及服务器
CN111352633A (zh) * 2020-02-24 2020-06-30 腾讯科技(深圳)有限公司 应用程序的资源下载方法、装置、终端及存储介质
CN111459531A (zh) * 2020-04-21 2020-07-28 广州虎牙科技有限公司 应用程序升级方法、装置、电子设备及存储介质
CN111651188A (zh) * 2020-06-01 2020-09-11 上海艾拉比智能科技有限公司 差分包的数据结果确定方法、装置、设备及存储介质
CN111651188B (zh) * 2020-06-01 2023-06-02 上海艾拉比智能科技有限公司 差分包的数据结果确定方法、装置、设备及存储介质
CN112416386A (zh) * 2020-10-26 2021-02-26 北京一亩田新农网络科技有限公司 软件升级的方法、装置、系统以及介质
CN113312073A (zh) * 2021-06-15 2021-08-27 上海益世界信息技术集团有限公司广州分公司 一种安装包文件处理方法和相关装置
CN113312073B (zh) * 2021-06-15 2022-05-27 上海益世界信息技术集团有限公司广州分公司 一种安装包文件处理方法和相关装置

Similar Documents

Publication Publication Date Title
CN109582323A (zh) 应用安装包的增量更新方法、装置、终端及服务器
CN100492292C (zh) 固件升级中的自动备份存储
US8219984B2 (en) Firmware update network and process employing preprocessing techniques
CN107367949B (zh) 获取产品标识的方法、装置和系统
CN107465539A (zh) 固件的升级方法、终端及固件的升级系统
CN104918114B (zh) 一种操作系统升级方法及装置
CN109558160A (zh) 升级方法、嵌入式系统
MXPA04002527A (es) Metodo, aparato y sistema para actualizacion de programas.
CN105094875A (zh) 一种软件升级方法及装置
CN102012831A (zh) 基于Linux平台的OTA升级方法
CN111475195A (zh) 一种固件升级方法、装置和系统
CN105786549A (zh) 智能设备及其升级方法
KR100927446B1 (ko) 이동통신단말기의 트랜잭션 단위 펌웨어 업그레이드 방법및 이를 이용한 펌웨어 업그레이드 시스템
CN106155745A (zh) 基本输入输出系统的升级方法、装置和系统
CN103118198A (zh) 移动终端的固件升级方法及系统
CN110083379A (zh) 一种服务器部件升级方法及相关装置
CN110647337A (zh) 物联网mcu空中固件升级方法
CN102567328A (zh) 增量更新的方法和装置
GB0017328D0 (en) Automated software upgrade in distributed computing system
CN114546588A (zh) 任务的部署方法、装置、存储介质及电子装置
CN110147246A (zh) 空间下载技术的版本检查方法及装置、存储介质和终端
CN108647039A (zh) 一种数据升级的处理方法及装置
CN113535209B (zh) 一种交互电子白板的升级方法及系统
CN105740032A (zh) 一种网络设备系统升级方法及装置
CN107783778A (zh) 一种基于特征值查表法的增量升级方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190405