CN109309725B - 应用下载和更新方法、装置、计算机设备及存储介质 - Google Patents

应用下载和更新方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN109309725B
CN109309725B CN201811250080.0A CN201811250080A CN109309725B CN 109309725 B CN109309725 B CN 109309725B CN 201811250080 A CN201811250080 A CN 201811250080A CN 109309725 B CN109309725 B CN 109309725B
Authority
CN
China
Prior art keywords
file
application
data
list
file set
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.)
Active
Application number
CN201811250080.0A
Other languages
English (en)
Other versions
CN109309725A (zh
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.)
Shenzhen Tencent Information Technology Co Ltd
Original Assignee
Shenzhen Tencent Information Technology 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 Shenzhen Tencent Information Technology Co Ltd filed Critical Shenzhen Tencent Information Technology Co Ltd
Priority to CN201811250080.0A priority Critical patent/CN109309725B/zh
Publication of CN109309725A publication Critical patent/CN109309725A/zh
Application granted granted Critical
Publication of CN109309725B publication Critical patent/CN109309725B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种应用下载和更新方法、装置、计算机设备及存储介质,该应用下载方法包括:获取应用的文件集合清单的清单下载地址;按照所述清单下载地址,下载相应文件集合清单;从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;按照各所述数据下载地址,多线程地下载相应的文件数据;根据所述文件数据安装所述应用。本申请的方案提高了应用安装效率。

Description

应用下载和更新方法、装置、计算机设备及存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种应用下载和更新方法、装置、计算机设备及存储介质。
背景技术
随着科学技术的飞速发展,计算机技术不断地在提高,计算机应用程序在人们的日常工作和生活中的使用也越来越广泛。应用程序需要通过计算机软件发布的形式进行发布,用户才能够通过客户端下载应用程序并使用。
传统方法中,在对应用程序的各个版本进行发布时,开发人员需要手动地针对每个版本的应用程序的全部文件制作一个安装包,用户需要通过客户端下载安装包,然后再根据安装包运行应用程序。然而,安装包是由很多文件集中打包而成,数据量非常大,下载耗时长。因而,传统方法需要下载安装包才能安装应用程序,导致应用程序安装效率比较低。
发明内容
基于此,有必要针对传统方法需要下载安装包才能安装应用程序,导致应用程序安装效率比较低的问题,提供一种应用下载、更新及发布方法、装置、计算机设备及存储介质。
一种应用下载方法,所述方法包括:
获取应用的文件集合清单的清单下载地址;
按照所述清单下载地址,下载相应文件集合清单;
从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;
按照各所述数据下载地址,多线程地下载相应的文件数据;
根据所述文件数据安装所述应用。
一种应用下载装置,所述装置包括:
获取模块,用于获取应用的文件集合清单的清单下载地址;
下载模块,用于按照所述清单下载地址,下载相应文件集合清单;从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;按照各所述数据下载地址,多线程地下载相应的文件数据;
安装模块,用于根据所述文件数据安装所述应用。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
获取应用的文件集合清单的清单下载地址;
按照所述清单下载地址,下载相应文件集合清单;
从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;
按照各所述数据下载地址,多线程地下载相应的文件数据;
根据所述文件数据安装所述应用。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取应用的文件集合清单的清单下载地址;
按照所述清单下载地址,下载相应文件集合清单;
从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;
按照各所述数据下载地址,多线程地下载相应的文件数据;
根据所述文件数据安装所述应用。
上述应用下载方法、装置、计算机设备及存储介质,在下载应用时,通过获取应用的各文件集合清单的清单下载地址;分别按照各文件集合清单的清单下载地址,下载相应文件集合清单;该文件集合清单中包括各个数据下载地址,数据下载地址是包括于所述应用的各文件数据的数据下载地址。通过按照各所述数据下载地址,多线程地并发下载相应的文件数据,相较于单线程下载一个安装包而言,提高了下载效率,能够更加快速地下载完用于安装应用的文件数据,进而,根据文件数据安装应用,能够提高应用安装效率。
一种应用更新方法,所述方法包括:
获取应用的目标版本的各第一文件集合清单;
确定所述应用安装于本地的原始版本的各第二文件集合清单;
将所述第一文件集合清单和第二文件集合清单进行差异性比对;
根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;
按照各所述下载地址,多线程地下载相应差异文件数据;
根据所述差异文件数据,在本地将所述应用由原始版本更新至目标版本。
一种应用更新装置,所述装置包括:
获取模块,用于获取应用的目标版本的各第一文件集合清单;确定所述应用安装于本地的原始版本的各第二文件集合清单;
差异文件数据下载模块,用于将所述第一文件集合清单和第二文件集合清单进行差异性比对;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;按照各所述下载地址,多线程地下载相应差异文件数据;
更新模块,用于根据所述差异文件数据,在本地将所述应用由原始版本更新至目标版本。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
获取应用的目标版本的各第一文件集合清单;
确定所述应用安装于本地的原始版本的各第二文件集合清单;
将所述第一文件集合清单和第二文件集合清单进行差异性比对;
根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;
按照各所述下载地址,多线程地下载相应差异文件数据;
根据所述差异文件数据,在本地将所述应用由原始版本更新至目标版本。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取应用的目标版本的各第一文件集合清单;
确定所述应用安装于本地的原始版本的各第二文件集合清单;
将所述第一文件集合清单和第二文件集合清单进行差异性比对;
根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;
按照各所述下载地址,多线程地下载相应差异文件数据;
根据所述差异文件数据,在本地将所述应用由原始版本更新至目标版本。
上述应用更新方法、装置、计算机设备及存储介质,在对应用进行版本更新时,通过比对目标版本和原始版本的文件集合清单之间的差异性,确定出目标版本相较于原始版本的差异文件数据的下载地址。按照下载地址,多线程并发地下载相应差异文件数据,可以提高对差异文件数据的下载速度。根据差异文件数据,在本地将应用由原始版本更新至目标版本,仅需要下载存在差异的差异文件数据,就可以实现对应用的版本更新,相较于传统方法需要制作并下载新版本的安装包而言,提高了新版本的应用程序的安装效率。
一种应用发布方法,所述方法包括:
确定应用的目标版本相较于原始版本的差异文件数据;
上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;
获取所述原始版本的第二文件集合清单;
根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址;
根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
一种应用发布装置,所述装置包括:
差异确定模块,用于确定应用的目标版本相较于原始版本的差异文件数据;
下载地址获取模块,用于上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;获取所述原始版本的第二文件集合清单;根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址;
发布模块,用于根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
确定应用的目标版本相较于原始版本的差异文件数据;
上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;
获取所述原始版本的第二文件集合清单;
根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址;
根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
确定应用的目标版本相较于原始版本的差异文件数据;
上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;
获取所述原始版本的第二文件集合清单;
根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址;
根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
上述应用发布方法、装置、计算机设备和存储介质,在发布新的目标版本的应用时,仅需要确定出目标版本与原始版本之间的差异文件数据并上传,确定两个版本之间未发生变化的文件数据的下载地址,并根据相同的文件数据即未发生变化的文件数据的下载地址,以及发生变化的差异文件数据的下载地址生成第二文件集合清单并上传。第二文件集合清单,用于指示服务器根据第二文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。这样一来,用户在下载安装新的目标版本的应用时,就可以通过第二文件集合清单中的文件数据的下载地址,多线程地下载各个文件数据,从而提高新版本的应用的安装效率。此外,在应用发布时,仅需要上传差异文件数据,即可自动生成新的目标版本的第二文件集合清单并上传,以完成对目标版本的应用的发布,而不需要开发人员手动地制作复杂的安装包,提高了应用发布效率。
附图说明
图1A为一个实施例中应用下载方法的应用场景图;
图1B为另一个实施例中应用下载方法的应用场景图;
图2为一个实施例中应用下载方法的流程示意图;
图3为另一个实施例中的应用下载流程的简化示意图;
图4为一个实施例中应用更新方法的流程示意图;
图5为另一个实施例中应用更新方法的流程示意图;
图6为一个实施例中应用发布方法的流程示意图;
图7为一个实施例中应用版本的组成结构示意图;
图8为一个实施例中应用更新方法的原理示意图;
图9为一个实施例中应用下载装置的框图;
图10为一个实施例中应用更新装置的框图;
图11为一个实施例中应用发布装置的框图;
图12为一个实施例中计算机设备的内部结构示意图;
图13为另一个实施例中计算机设备的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1A为一个实施例中应用下载方法的应用场景图。参照图1A,该应用场景中包括下载终端110、服务器120和发布终端130,下载终端110和发布终端130分别通过网络与服务器120连接。
下载终端110和发布终端130可以是智能电视机、台式计算机或移动终端,移动终端可以包括手机、平板电脑、笔记本电脑、个人数字助理和穿戴式设备等中的至少一种。服务器120可以用独立的服务器或者是多个物理服务器组成的服务器集群来实现。
其中,发布终端130,是发布应用的终端,即开发人员基于发布终端130进行应用版本的制作,并将基于发布终端130触发对应用的发布处理,将应用的实质性的文件数据上传至服务器120,以完成应用的进行发布。用户可以通过下载终端110从服务器120中下载相应的文件数据,以安装该发布的应用。
下载终端110在相应下载安装应用时,可以从服务器120中获取应用的文件集合清单的清单下载地址。下载终端110分别按照清单下载地址,从服务器120中下载相应文件集合清单。下载终端110可以从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址,并按照各数据下载地址,多线程地从服务器120中下载相应的文件数据。下载终端110可以根据所下载的各文件数据安装应用。
图1B为另一个实施例中应用下载方法的应用场景图。服务器120可以包括版本发布服务器120a和内容分网络(CDN,Content Delivery Network)服务器120b。开发人员可以基于发布终端130进行应用版本的制作,并将该版本应用的文件数据上传至内容分网络服务器120b。发布终端130可以通知发布服务器120a发布版本。发布服务器120a可以通知下载终端110发布的应用版本,用户可以通过下载终端110可以从内容分网络服务器120b下载发布的应用版本的文件数据,以安装该版本的应用。
需要说明的是,本申请各实施例中的“第一”和“第二”仅用作区分,而并不用于大小、先后、从属等方面的限定。
图2为一个实施例中应用下载方法的流程示意图。本实施例主要以该应用下载方法应用于图1A或图1B中的下载终端110中进行举例说明。参照图2,该方法具体包括如下步骤:
S202,获取应用的文件集合清单的清单下载地址。
其中,应用,即应用程序(Application)。应用可以是任意类型。应用可以是游戏应用。应用还可以是社交网络应用、音视频应用和电子商务应用等。
可以理解,社交网络应用,是基于社交网络平台实现交流互动的应用。社交网络平台是一个泛称,是指通过网络方式实现交流互动的平台。社交网络应用可以包括即时通信应用和内容分享应用等。即时通信应用,是实现即时通信功能的应用。内容分享应用是对内容进行分享的应用。其中,内容可以包括网络日志和新闻资讯等。网络日志,是指用户通过网络发表的日志。
音视频应用,是主要以音视频形式播放内容的应用。电子商务应用,是实现电子商务功能的应用。
文件集合,是应用所包括的文件数据的集合。文件数据,是文件的实质性数据。文件数据可以是应用所包括的独立的文件,也可以是对应用包括的文件进行切片得到的文件片。文件集合清单,是文件集合的清单,用于描述文件集合的明细信息。可以理解,一个文件集合具有一个相应的文件集合清单。清单下载地址,是文件集合清单的下载地址。
可以理解,通常情况下,应用包括多份文件数据,那么,可以将应用的全部文件数据作为一个文件集合,也可以将应用的文件数据进行集合划分,得到多个文件集合,因此,一个应用可以包括至少一个文件集合,那么,一个应用可以对应至少一个文件集合清单。当一个应用有多个文件集合清单中,下载终端可以获取应用的各个文件集合清单的清单下载地址。
在一个实施例中,文件集合清单中包括文件集合的集合信息和该文件集合中所包括的文件数据的相关信息。
文件集合的集合信息,是描述的文件集合级别的信息。在一个实施例中,文件集合的集合信息,包括文件集合标识、文件集合的版本号、文件集合包括的文件数据的数量、文件集合的生成时间戳、文件集合的原始大小、以及文件集合被压缩加密后大小等中的至少一种。
文件数据的相关信息,是与文件数据相关的信息。文件数据的相关信息包括文件数据的数据下载地址。数据下载地址,是文件数据的下载地址。
在一个实施例中,文件数据的相关信息还可以包括文件数据的大小和文件数据的唯一性信息、文件数据的压缩算法和文件数据的加密算法等中的至少一种。文件数据的大小,包括文件数据的原始大小了,以及文件数据被压缩加密后的大小中的至少一种。文件数据的唯一性信息,是用于唯一表示文件数据的信息。不同的文件数据,其所对应的唯一性信息不同。文件数据的唯一性信息,包括文件数据的哈希值和/或文件数据的信息摘要。
需要说明的是,文件数据的压缩算法和加密算法,可以是以文件集合级别进行设置,即同一个文件集合里面使用的加密和压缩算法是相同的。文件数据的压缩算法和加密算法,也可以以文件数据级别进行设置,即针对各个文件数据分别设置相应的加密算法和压缩算法。可以理解,以文件集合级别设置文件数据的压缩算法和加密算法,相较于以文件数据级别设置而言,能够更加便捷、高效地使用文件数据,从而提高了文件数据的复用性。
在其他实施例中,文件数据的压缩算法和加密算法还可以不区分级别设置,即所有的文件数据都对应相同的压缩算法和加密算法。对以何种级别设置文件数据的压缩算法和加密算法并不做限定。
在一个实施例中,当文件数据为文件片时,文件数据的相关信息还包括文件片所属文件的信息和文件片在所属文件中的序号等中的至少一种。文件片所属文件的信息包括文件的存储路径、大小、属性和唯一性信息等中的至少一种。
表1为一个实施例中文件集合清单的信息。
Figure 993873DEST_PATH_IMAGE001
表1
需要说明的是,表1中的chunk即为文件片,file即为文件,repository即为文件集合,repository_id即为文件集合标识,manifest即为清单,manifest_id即为文件集合的版本号。SHA-2即为通过SHA-2(Secure Hash Algorithm-2,安全散列算法)算法对文件片的原始数据进行哈希计算得到的哈希值。MD5(MD5 Message-Digest Algorithm,MD5消息摘要算法)即为通过MD5算法对文件的原始数据进行摘要计算得到的信息摘要。
具体地,下载终端在下载安装应用时,可以向服务器发起针对应用的下载请求,服务器可以返回应用的文件集合清单的清单下载地址至下载终端。
在一个实施例中,S202包括:发送针对应用的下载请求;下载请求中包括用户标识;接收在对用户标识鉴权通过后反馈的下载地址;清单下载地址,是应用的各文件集合清单的清单下载地址。
具体地,下载终端可以向服务器发送针对应用的下载请求,下载请求中包括请求下载应用的用户的用户标识。服务器可以对该用户标识进行权限鉴定处理,以鉴定该用户标识是否具有对应用的下载权限,在鉴定用户标识具有对应用的下载权限后(即对用户标识鉴权通过后),服务器可以反馈应用的各文件集合清单的清单下载地址至下载终端。可以理解,在鉴权通过后,服务器还可以反馈除清单下载地址以外的下载配置信息,对此不做限定。
S204,按照清单下载地址,下载相应文件集合清单。
具体地,下载终端可以按照清单下载地址,查找相应文件集合清单的存储位置,并对所存储的文件集合清单进行下载。
可以理解,当清单下载地址有多个时,下载终端可以分别按照各清单地址,下载各自相应的文件集合清单。
S206,从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址。
其中,数据下载地址,是包括于应用的文件数据的下载地址。包括于应用的文件数据,即应用所包括的文件数据。可以理解,根据包括于应用的文件数据可以安装应用,并实现应用的功能。
可以理解,各文件数据有对应的数据下载地址。一个文件集合清单包括该文件集合中各份文件数据的数据下载地址。
具体地,下载终端可以从文件集合清单中,分别提取包括应用的各文件数据的数据下载地址,即可以得到多个数据下载地址。
需要说明的是,当文件数据为应用所包括的文件时,下载终端则可以从文件集合清单中,分别提取包括于应用的各文件的数据下载地址,比如,文件的存储路径。当文件数据为文件片时,下载终端则可以从文件集合清单中,分别提取包括于应用的各文件片的数据下载地址。
在一个实施例中,根据清单下载地址所下载的文件集合清单可以为加密后的文件集合清单。即在应用发布时,是对文件集合清单进行加密上传的。下载终端则可以获取与文件集合清单对应的密钥,根据密钥解密文件集合清单,在解密文件集合清单之后,再执行步骤S206。
S208,按照各数据下载地址,多线程地下载相应的文件数据。
具体地,下载终端可以按照各数据下载地址,多线程地并发下载相应的文件数据。可以理解,每个文件数据的下载处理是独立地、并发地,相互之间并不影响。从而相较于安装包而言,可以提高应用的文件数据下载速度。
S210,根据文件数据安装应用。
在一个实施例中,下载终端可以在下载文件数据后,直接根据下载的文件数据对应用进行安装。
在另一个实施例中,下载终端可以在下载每份文件数据后,从相应数据下载地址所属的文件集合清单中,提取文件数据的唯一性信息,根据该唯一性消息对文件数据进行校验,以判断文件数据下载的是否正确,在判断下载的文件数据正确之后,再根据文件数据对应用进行安装。可以理解,文件数据可以是文件或文件片。
需要说明的是,由于各文件数据的下载是独立的,所以,下载终端可以根据所下载的各文件数据对应用进行安装,而不需要等到所有文件数据下载完毕后再进行安装,从而提高了应用的安装效率。
在一个实施例中,文件集合清单中还包括文件数据的目录信息。可以理解,下载终端可以直接根据文件集合清单中的目录信息,建立相应的空文件,以将下载的文件数据,写入相应的空文件中。
在一个实施例中,当文件数据为文件片时,下载终端可以在针对与文件片相应的文件集合清单所创建的空文件中,直接写入所下载的文件片。也可以对文件片进行唯一性校验通过后,将文件片写入空文件中。
在一个实施例中,下载终端还可以写注册表和创建快捷方式,以完成对应用的安装。
可以理解,当需要将安装的应用更新至新的目标版本时,该应用下载方法还可以执行本申请各实施例中所提供的应用更新方法中的各个步骤,以将安装的应用更新至目标版本。
上述应用下载方法,在下载应用时,通过获取应用的各文件集合清单的清单下载地址;分别按照各文件集合清单的清单下载地址,下载相应文件集合清单;该文件集合清单中包括各个数据下载地址,数据下载地址是包括于所述应用的各文件数据的数据下载地址。通过按照各所述数据下载地址,多线程地并发下载相应的文件数据,相较于单线程下载一个安装包而言,提高了下载效率,能够更加快速地下载完用于安装应用的文件数据。因此,根据文件数据安装应用,能够提高应用安装效率。
在一个实施例中,该方法还包括:分别获取所下载的各文件集合清单所对应的文件集合标识;发送携带文件集合标识的密钥请求;接收针对密钥请求反馈的密钥;根据密钥解密相应文件集合清单。
其中, 文件集合标识,用于唯一标识文件集合。文件集合清单与所对应的文件集合的文件集合标识相对应。
具体地,下载的文件集合清单是加密的,下载终端在下载文件集合清单之后,可以获取该文件集合清单所对应的文件集合标识,根据该文件集合标识生成密钥请求,该密钥请求携带该文件集合标识。下载终端可以将生成的密钥请求发送至服务器,服务器可以获取与密钥请求中携带的文件集合标识对应的密钥,并将密钥反馈至下载终端。下载终端根据服务器反馈的密钥对文件集合清单进行解密。在解密文件集合清单之后,再执行步骤S206。
上述实施例中,相当于对文件集合清单进行了加密,在下载文件集合清单之后,获取相应的密钥进行解密,提高了安全性。
在一个实施例中,文件数据是文件片;文件片,由对应用包括的文件进行切片得到;该方法还包括:从文件片的数据下载地址所属的文件集合清单中,确定与文件片相应的加密算法和压缩算法;按照加密算法,对下载的文件片进行解密处理;将解密处理后的文件片按照压缩算法进行解压缩。
具体地,下载的文件片是经过压缩加密的。文件集合清单中还包括与文件片相应的加密算法和压缩算法,下载终端可以从文件片的数据下载地址所属的文件集合清单中,确定与文件片相应的加密算法和压缩算法,并按照确定的加密算法,对下载的文件片进行解密处理。下载终端可以将解密处理后的文件片按照压缩算法进行解压缩。
上述实施例中,相当于在文件发布时即对文件片进行了压缩和加密处理,这样在下载文件片后,必须根据文件集合清单中描述的相应压缩和加密算法,解密解压缩文件片,才能得到实质用于安装应用的实质性的真实的文件数据,而在不知道文件集合清单中的压缩和加密算法的情况下,就无法还原文件片中真实的文件数据,提高了应用下载安装的安全性。
在一个实施例中,文件数据是文件片。该方法还包括:针对每个文件片,根据文件片的数据下载地址所属的文件集合清单,对文件片进行唯一性校验;当对所述文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载文件片。
在一个实施例中,文件集合清单中包括文件片的唯一性信息。下载终端也可以在下载每份文件片后,从相应数据下载地址所属的文件集合清单中,提取与文件片相应的唯一性信息。可以理解,唯一性信息,用于唯一表示文件片,即文件片不同,相应的唯一性信息不同。下载终端可以将下载的文件片与文件集合清单中描述的相应唯一性信息进行匹配,判断下载的文件片是否符合描述的唯一性信息。当下载的文件片不符合该唯一性信息时,则说明下载的文件片不正确,下载终端可以重新按照数据下载地址下载该文件片。
可以理解,当下载的文件片是压缩加密的,则可以在对文件片进行解密和解压缩处理后,再执行将下载的文件片与文件集合清单中描述的相应唯一性信息进行匹配的步骤。
在一个实施例中,下载终端可以按照对下载的文件片进行唯一性信息提取处理,得到提取的唯一性信息,下载终端可以将提取的唯一性信息与文件集合清单中的唯一性信息进行比对,当比对一致时,则说明下载的文件片符合描述的唯一性信息,反之,若不一致时,则说明下载的文件片不符合描述的唯一性信息。
比如,文件集合清单中描述的唯一性信息为文件片的哈希值,则下载终端可以计算下载的文件片的哈希值,将计算的哈希值和描述的哈希值进行比对,当比对一致时,则说明下载的文件片符合描述的唯一性信息,反之,若不一致时,则说明下载的文件片不符合描述的唯一性信息。
在其他实施例中,下载终端还可以从文件片的数据下载地址所属的文件集合清单中,提取记录的与文件片相应的大小,根据提取的大小对文件片进行唯一性校验,当下载的文件片不符合所提取的记录的大小时,即表示对所述文件片的唯一性校验不通过,则可以重新按照相应数据下载地址下载文件片。需要说明的是,下载终端可以将记录的唯一性信息的校验和大小的校验结合起来,对下载的文件片进行校验,当两者任意一项不满足时,则可以重新按照相应数据下载地址下载文件片。
上述实施例中,根据文件集合清单中记录的与文件片相应的唯一性信息,对下载的文件片进行校验,当下载的文件片不符合唯一性信息,即校验不通过时,则重新按照相应数据下载地址下载文件片,提高了用于安装应用的文件片的准确性,从而提高了应用安装的准确性。
在一个实施例中,根据文件数据安装应用包括:当对下载的文件片的唯一性校验通过时,则在针对与文件片相应的文件集合清单所创建的空文件中,写入该文件片。
具体地,下载终端可以针对各文件集合清单创建空文件,在与符合相应唯一性信息的文件片对应的空文件中,写入该文件片。与文件片对应的空文件,是针对与文件片相应的文件集合清单所创建的空文件。可以理解,下载终端将文件片写入文件的过程,相当于在根据文件片安装应用。
在一个实施例中,根据文件数据安装应用还包括:针对每个文件集合清单,在将与文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当完整性校验未通过时,则返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
具体地,针对每个文件集合清单,下载终端在将与文件集合清单相应的文件片皆写入对应空文件后,还可以对写入文件片后得到的各个文件进行完整性校验,以校验得到的各文件是否完整。当完整性校验通过后,再执行步骤S210,即再根据各文件中的文件片安装应用。当完整性校验未通过时,则返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,即重新根据文件集合清单中的数据下载地址,多线程地下载相应的文件片,以对文件进行修复。
在一个实施例中,对写入后得到的文件进行完整性校验的步骤包括:从文件集合清单中提取与文件相应的唯一性信息,将写入后得到的文件与提取的相应的唯一性信息进行匹配,当写入后得到的文件符合相应的唯一性信息,则判定对写入后得到的文件的完整性校验通过,当写入后得到的文件不符合相应的唯一性信息时,则判定对写入后得到的文件的完整性校验未通过。直至对每个文件集合清单所对应的写入文件片后的文件的完整性校验都通过后,就表示该应用的文件已全部完成安装,
在一个实施例中,根据文件数据安装应用还包括:在对每个文件集合清单所对应的文件的完整性校验皆通过后,则针对应用获取用于写入注册表的信息;将获取的该信息写入注册表;在注册表写入完毕后,创建所述应用的快捷方式。
具体地,在对每个文件集合清单所对应的写入文件片后的文件的完整性校验都通过后,可以针对该应用写注册表,即,针对应用获取用于写入注册表的信息,将获取的该信息写入注册表,并在注册表写入完毕后,创建该应用的快捷方式。这样一来,即完成了对应用的整个安装处理。
可以理解,用于写入注册表的信息,包括应用的安装信息和应用的设置信息等中的至少一种。可以理解,针对不同应用,所获取的于写入注册表的信息种类可以不同。
在一个实施例中, 下载终端可以计算写入后得到的文件的唯一性信息,将计算的唯一性信息与文件集合清单中描述的唯一性信息进行比对,若一致,则判定写入后得到的文件符合文件集合清单中相应的唯一性信息,若不一致,则判定写入后得到的文件不符合文件集合清单中相应的唯一性信息。
图3为一个实施例中的应用下载流程的简化示意图。参照图3,描述了应用从下载到完成安装的详细过程。参照图3,用户请求下载的应用为游戏应用,那么,具体过程如下:
1、在开始下载游戏之前,下载终端会先去服务器后台查询用户是否具有该游戏应用的下载权限,如果有权限,则会返回游戏应用的清单下载地址(即用于下载文件集合清单的下载地址);
2、下载终端可以根据清单下载地址下载文件集合清单。下载完成后,下载终端可以解析文件集合清单,提取该文件集合清单中的文件片的数据下载地址。
可以理解,文件集合清单可以是加密的,这种情况下,下载终端可以在下载完文件集合清单后,根据文件集合标识向服务器后台请求相对应的密钥,并根据服务器后台返回的密钥解密所下载的文件集合清单,以从中提取文件片的数据下载地址。
3、下载终端可以针对每个文件集合清单创建相应文件夹和空文件。
4、下载终端可以根据提取的数据下载地址多线程地下载文件片,并对下载的文件片进行解密解压处理,对解密解压后的文件片内容进行校验(比如,唯一性校验),校验通过则将文件片写入相应文件中,校验不通过,则重新根据相应的数据下载地址下载该文件片,并重新执行步骤4中的处理,直至校验通过后将文件片写入相应文件中。
5、当文件片全部写入针对文件集合清单创建的空文件中后,则对写入后的文件的进行完整性校验。如果完整性校验通过,则说明与该文件对应的文件集合清单所表示的文件集合安装完成。如果完整性校验不通过,则对不完整的有问题的文件进行修复处理;
6、等到全部文件集合安装完成,则说明游戏应用的实质性文件已全部安装成功。下载终端接着就可以将游戏应用的一些信息(比如设置信息、安装信息等)写入注册表中,并创建游戏应用的快捷方式。
上述实施例中,在将与文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当完整性校验未通过时,则返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,以继续下载正确、完整的文件,提高了用于安装应用的文件的准确性,从而提高了应用安装的准确性。
如图4所示,在一个实施例中, 提供了一种应用更新方法,以该方法应用于下载终端为例进行说明,该下载终端可以是图1A或图1B中的下载终端110。该方法包括以下步骤:
S402,获取应用的目标版本的各第一文件集合清单。
其中,目标版本,是想要将应用更新至的版本。
具体地,下载终端可以从服务器中请求获取应用的目标版本的第一文件集合清单的第一清单下载地址,根据该第一清单下载地址下载第一文件集合清单。
在一个实施例中,在步骤S402之前,该方法还包括:在一个实施例中,方法还包括:获取应用的目标版本的第一文件集合标识;确定应用安装于本地的原始版本的第二文件集合标识;当第一文件集合标识和第二文件集合标识一致时,则执行步骤S402。
其中,原始版本,是应用当前安装于下载终端本地的待更新的版本。
可以理解,目标版本有至少一个第一文件集合标识,原始版本有至少一个第二文件集合标识。
具体地,下载终端可以从服务器中请求获取目标版本的第一文件集合标识,并从下载终端的本地或/从服务器中获取应用安装于本地的原始版本的第二文件集合标识。下载终端可以将获取的第一文件集合标识和第二文件集合标识进行比对。
当第一文件集合标识和第二文件集合标识一致时,即目标版本和原始版本都有相同的文件集合标识时,则说明目标版本和原始版本在文件集合层级上并不存在差异,下载终端则可以获取目标版本和原始版本各自的文件集合清单,通过对两者文件集合清单的比对,确定出目标版本与原始版本在文件层级上的差异。所以,当第一文件集合标识和第二文件集合标识一致时,则可以执行步骤S402。
在一个实施例中,当存在相较于第一文件集合标识多余的第二文件集合标识时,则从本地中删除多余的第二文件集合标识所对应的文件集合。
可以理解,相较于第一文件集合标识多余的第二文件集合标识,是原始版本有而目标版本没有的文件集合标识。下载终端则可以从下载终端的本地中删除多余的第二文件集合标识所对应的文件集合。即删除原始版本中有而目标版本中已经不需要的文件集合。
在一个实施例中,当存在相较于第二文件集合标识新增的第一文件集合标识时,则下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件数据,并根据新增的文件数据,在本地将应用由原始版本更新至目标版本。
其中,相较于第二文件集合标识新增的第一文件集合标识,是目标版本有而原始版本没有的文件集合标识。新增的文件数据,是目标版本相较于原始版本的新增的文件数据。
具体地,下载终端可以获取与新增的第一文件集合标识对应的清单下载地址,根据该清单下载地址下载该新增的文件集合清单;提取新增的文件集合清单中包括的数据下载地址,根据提取的各数据下载地址,多线程地下载相应新增的文件数据。下载终端可以根据下载的新增的文件数据,在本地将应用由原始版本更新至目标版本。
S404,确定应用安装于本地的原始版本的各第二文件集合清单。
其中,原始版本,是应用当前安装于下载终端本地的待更新的版本。
具体地,下载终端可以从本地获取原始版本的各第二文件集合清单,也可以从服务器中请求获取原始版本的各第二文件集合清单。对此不做限定。
S406,将第一文件集合清单和第二文件集合清单进行差异性比对。
具体地,下载终端可以比对第一文件集合清单和第二文件集合清单的差异性比对。
在一个实施例中,该方法还包括:当比对结果表示第二文件集合清单对应多余文件数据时,从本地安装的原始版本的文件中查找多余文件数据,并从本地中删除该多余文件数据。
其中,第二文件集合清单中对应多余文件数据,是指第二文件集合清单对应的文件集合包括的文件数据相较于第一文件集合清单对应的文件集合包括的文件数据而言,具有多出来的文件数据。即原始版本相较于目标版本具有多余文件数据。
在一个实施例中,该方法还包括:从第二文件集合清单中提取与多余文件数据对应的唯一性信息;将从本地查找的多余文件数据与唯一性信息匹配;当匹配通过时,则再执行从本地中删除多余文件数据的步骤。
具体地,在从本地删除多余文件数据之前,下载终端可以从第一文件集合清单中提取与多余文件数据对应的唯一性信息,并将从本地查找的多余文件数据与唯一性信息匹配,在匹配通过时再从本地删除多余文件数据,以避免误删除带来的应用的文件数据不准确。
可以理解,文件数据可以为文件或文件片。当文件数据为文件时,下载终端可以直接从本地安装的原始版本的文件中查找多余文件片;从本地中删除多余文件片。在一个实施例中, 下载终端可以在多余文件片与第二文件集合清单中相应的唯一性信息匹配通过后,再从本地删除多余文件片。
S408,根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址。
在一个实施例中,文件数据为文件片,差异文件数据,是目标版本相较原始版本的新增文件数据。
步骤S408包括:当比对结果表示第一文件集合清单对应新增文件时,则从第一文件集合清单中,获取新增文件对应的各文件片的下载地址。
第一文件集合清单对应新增文件,是指第二文件集合清单对应的文件集合包括的文件相较于第一文件集合清单对应的文件集合包括的文件而言,具有多出来的文件。即目标版本相较于原始版本具有新增的文件。
比如,第一文件集合清单对应的文件集合包括文件f1、f2和f3,第二文件集合清单对应的文件集合包括文件f1和f2,那么,文件f3即为新增的文件。
具体地,当比对结果表示第一文件集合清单对应新增文件时,下载终端可以从第一文件集合清单中,获取新增文件对应的各文件片的下载地址。可以理解,新增文件对应的各文件片,属于目标版本相较原始版本的差异文件数据,那么,新增文件对应的各文件片的下载地址,也属于目标版本相较原始版本的差异文件数据的下载地址。所以,下载终端可以根据获取的下载地址,执行步骤S410。
在一个实施例中,差异文件数据,还可以是目标版本相较原始版本的同一类型的文件中的不同的文件数据。比如,目标版本和原始版本都有文件f1,目标版本的文件f1的文件内容相较于原始版本的文件f1的文件内容而言,存在内容更新,即存在不同的文件数据,比如存在不同的文件片。
S410,按照各下载地址,多线程地下载相应差异文件数据。
S412,根据差异文件数据,在本地将应用由原始版本更新至目标版本。
具体地,下载终端可以按照各下载地址,多线程地、并发地下载相应差异文件数据。下载终端可以按照差异文件数据,在本地将应用由原始版本更新至目标版本。
可以理解,下载终端根据差异文件数据结合原始版本中需保留的文件数据,共同在本地将应用由原始版本更新至目标版本。原始版本中需保留的文件数据,即为原始版本中的与目标版本的第一文件集合清单匹配的文件数据。可以理解,原始版本中与第一文件集合清单匹配的文件数据,是第一文件集合清单和第二文件集合清单共同对应的文件数据。
在一个实施例中,下载终端可以新建空文件,将差异文件数据写入相应空文件中,并从本地的原始版本的文件中,确定与目标版本相同的文件数据,将相同的文件数据一并写入相应新建的文件中,从而得到目标版本的应用的完整文件,从而可以根据写入后的文件在本地将应用更新至目标版本。
可以理解,在其他实施例中,也可以不新建空文件,而是将下载的差异文件数据吸入原始版本的原始文件中,并对原始文件中多余的或者冲突的文件数据删除,从而得到标版本的应用的完整文件。
上述应用更新方法,在对应用进行版本更新时,通过比对目标版本和原始版本的文件集合清单之间的差异性,确定出目标版本相较于原始版本的差异文件数据的下载地址。按照下载地址,多线程并发地下载相应差异文件数据,可以提高对差异文件数据的下载速度。根据差异文件数据,在本地将应用由原始版本更新至目标版本,仅需要下载存在差异的差异文件数据,就可以实现对应用的版本更新,相较于传统方法需要制作并下载新版本的安装包而言,提高了新版本的应用程序的安装效率。此外,相当于根据差异文件数据和原始版本需保留的相同文件数据,将应用更新至目标版本,实现了文件数据的复用,节省了存储资源和应用发布资源。然后,可以直接将目标版本和原始版本进行比对,根据差异性,对应用进行更新,实现版本的直接更新,而不需要通过中间版本一层一层地过渡,提高了应用版本更新效率。
在一个实施例中,文件数据为文件片。步骤S406包括:将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对。步骤S408包括:当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,从第一文件集合清单中,获取更新文件中的更新文件片的下载地址。
其中,第一文件集合清单对应存在内容更新的更新文件,是指第一文件集合清单相较于第二文件集合清单,所描述的同一类型的文件中存在内容更新。即在目标版本和原始版本的同一类型的文件中存在内容更新。比如,第一文件集合清单和第二文件集合清单都描述了f1文件,第一文件集合清单中描述的f1文件的文件内容相较于第二文件集合清单中描述的f1文件的文件内容而言,存在内容更新。
更新文件片,是更新文件中发生更新的文件片。可以理解,更新文件中可以部分或全部发生更新,而发生了更新的文件片即为更新文件片。
具体地,当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,下载终端则可以从第一文件集合清单中,获取更新文件中的更新文件片的下载地址。
在一个实施例中,从第一文件集合清单中,获取更新文件中的更新文件片的下载地址包括:从第一文件集合清单中,获取与更新文件对应的各文件片的第一唯一性信息;从第二文件集合清单中,获取更新文件的本地同类型文件中的各文件片的第二唯一性信息;将第一唯一性信息和第二唯一性信息进行比对,确定更新文件中与本地同类型文件中的文件片不匹配的文件片,作为更新文件片;从第一文件集合清单中,获取更新文件片的下载地址。
其中,本地同类型文件,是在本地与更新文件同类型的文件。
具体地,下载终端可以从第一文件集合清单中,获取与更新文件对应的各文件片的第一唯一性信息。下载终端可以确定更新文件的本地同类型文件,并从第二文件集合清单中,获取本地同类型文件中各文件片的第二唯一性信息。下载终端可以将第一唯一性信息和第二唯一性信息进行比对,并根据比对结果,确定更新文件中与本地同类型文件中不匹配的文件片,作为更新文件片。
可以理解,针对各文件片,当文件片的第一唯一性信息和在第二唯一性信息比对不一致时,则可以判定该文件片为更新文件中与本地同类型文件中不匹配的文件片,即可以将该文件片作为更新文件片。
图5为一个实施例中应用更新方法的流程示意图。参照图5,简化地概括地描述了上述应用更新的过程。
上述实施例中,根据第一文件集合清单和第二文件集合清单中记录的文件的唯一性信息,来确定目标版本相较原始版本发生内容更新的更新文件,仅下载更新文件中发生更新的文件片,在实现应用更新的同时,减少了数据下载量。
如图6所示,在一个实施例中,提供了一种应用发布方法,以该方法应用于图1A或图1B中的发布终端130进行举例说明。该方法具体包括以下步骤:
S602,确定应用的目标版本相较于原始版本的差异文件数据。
其中,差异文件数据,是目标版本的文件与原始版本的文件相比较,存在差异的文件数据。
具体地,发布终端可以直接获取应用的目标版本相较于原始版本的差异文件数据。差异文件数据可以是差异文件或差异文件片。
在一个实施例中,差异文件数据为差异文件片。步骤S602包括:获取应用的目标版本的各文件和原始版本的各文件;将目标版本的各文件和原始版本的各文件进行差异性比对;将比对得到的目标版本相较于原始版本存在差异的文件进行切片;从切片后的文件片中,确定出差异文件片。
具体地,开发人员可以将应用的目标版本的各文件以及原始版本的各文件上传至发布终端,发布终端可以将目标版本的各文件和原始版本的各文件进行差异性比对,并确定目标版本相较于原始版本存在差异的文件。发布终端可以对存在差异的文件进行切片处理。发布终端可以根据差异性比对结果,从切片后的文件片中确定出差异文件片。差异文件片,是目标版本中与原始版本存在差异的文件片。本实施例中,差异文件片,即为差异文件数据。
可以理解,计算机设备可以按照预先设置的文件切片规则,对目标版本中存在差异的文件进行切片。预先设置的文件切片规则,可以是随机切片规则,也可以按照预设的切片长度进行切片的规则。即计算机设备可以对目标版本中存在差异的文件进行随机切片,也可以按照预设切片长度,将目标版本中存在差异的文件切片成符合预设切片长度的文件片。
S604,上传差异文件数据,并获取反馈的与差异文件数据相应的下载地址。
具体地,发布终端可以将差异文件数据上传至服务器,服务器会为差异文件数据分配存储空间,以将差异文件数据进行存储,并将差异文件数据相应的下载地址反馈至发布终端。
S606,获取原始版本的第二文件集合清单。
在一个实施例中,发布终端在发布原始版本的时候,可以在本地记录该原始版本的第二文件集合清单,因此,发布终端可以从发布终端的本地获取原始版本的第二文件集合清单。在另一个实施例中,发布终端也可以从服务器中请求获取原始版本的第二文件集合清单。
S608,根据差异文件数据,从第二文件集合清单中,确定原始版本与目标版本相同的文件数据的下载地址。
具体地,发布终端可以根据差异文件数据,确定原始版本与目标版本相同的文件数据,并从原始版本的第二文件集合清单中,获取该相同的文件数据的下载地址。
S610,根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
具体地,发布终端可以根据差异文件数据的下载地址和相同的文件数据的下载地址,一并生成目标版本的第一文件集合清单。发布终端可以将生成的第一文件集合清单上传至服务器。可以理解,服务器中在发布原始版本的应用时,就已经存储了原始版本的应用的文件数据。所以,第一文件集合清单可以指示服务器根据第一文件集合清单,查找所存储的与文件集合清单中描述相符的文件数据,即查找到差异文件数据,以及原始版本与目标版本相同的文件数据。服务器可以根据查找到的差异文件数据和相同的文件数据,发布目标版本的应用。
可以理解,当应用发布后,若用户是首次下载安装该应用,则可以按照本申请各实施例中所提供的应用下载方法,下载安装该发布的应用。当用户所使用的下载终端中已经安装有原始版本的应用,则在新的目标版本的应用发布后,可以按照本申请各实施例中所提供的应用更新方法,将在下载终端本地安装的原始版本的应用更新至新发布的目标版本。
上述应用发布方法,在发布新的目标版本的应用时,仅需要确定出目标版本与原始版本之间的差异文件数据并上传,确定两个版本之间未发生变化的文件数据的下载地址,并根据相同的文件数据即未发生变化的文件数据的下载地址,以及发生变化的差异文件数据的下载地址生成第二文件集合清单并上传。第二文件集合清单,用于指示服务器根据第二文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。这样一来,用户在下载安装新的目标版本的应用时,就可以通过第二文件集合清单中的文件数据的下载地址,多线程地下载各个文件数据,从而提高新版本的应用的安装效率。此外,在应用发布时,仅需要上传差异文件数据,即可自动生成新的目标版本的第二文件集合清单并上传,以完成对目标版本的应用的发布,而不需要开发人员手动地制作复杂的安装包,提高了应用发布效率。
另外,仅需要上传差异文件数据,使服务器根据上传的差异文件数据以及复用目标版本的第二文件集合清单中描述的原始版本中有的文件数据,来完成应用的发布,复用文件数据可以减少存储资源的浪费,而且能够提高应用发布的灵活性。
在一个实施例中,该方法还包括:当应用不存在已发布的原始版本时,则将应用的目标版本的文件进行集合划分,得到相应文件集合;根据各文件集合,确定相应的文件数据;上传文件数据,并获取反馈的文件数据的下载地址;针对每个文件集合,生成包括相应文件数据的下载地址的文件集合清单; 上传各文件清单集合;各文件清单集合,用于指示服务器将包括各文件清单集合的相应文件数据的应用进行发布。
需要说明的是,当应用存在已发布的原始版本时,可以执行步骤S602~S610。当应用不存在已发布的原始版本,即发布终端是首次发布应用时,发布终端可以将应用的目标版本的文件进行集合划分,得到相应文件集合。
发布终端可以根据各文件集合,确定相应的文件数据。可以理解,发布终端可以将文件集合中包括的独立的文件作为文件数据,发布终端也可以对文件集合中的文件进行切片,将切片得到的各文件片作为文件数据。
在一个实施例中,根据各文件集合,确定相应的文件数据包括:针对每个文件集合,获取文件集合中的文件;确定预先设置的文件切片规则;按照文件切片规则,对文件集合中的文件进行切片处理,得到相应各文件片作为文件数据。其中,预先设置的文件切片规则,可以是随机切片规则,也可以按照预设的切片长度进行切片的规则。
发布终端可以上传文件数据至服务器,服务器可以为上传的文件数据分配存储空间,以存储该文件数据。服务器可以将文件数据的下载地址反馈至发布终端。发布终端可以针对每个文件集合,生成包括相应文件数据的下载地址的文件集合清单。发布终端可以将各文件清单集合上传至服务器。服务器可以将包括各文件清单集合的相应文件数据的应用进行发布。可以理解,发布的该应用即为目标版本的应用。
图7为一个实施例中应用版本的组成结构示意图。参照图7,一个应用可以具备多个版本,比如可以包括版本A~C。实体层的实质性文件数据是文件片,文件集合包括多个文件片,比如文件集合c可以包括文件片5~7。一个应用版本包括多个文件集合,比如版本A包括文件集合a和b。新的应用版本可以复用旧版本中的文件集合。比如,版本B可以复用版本A中的文件集合b。可以理解,复用,即为重复使用。即旧的原始版本已有的文件集合可以被新的目标版本重新使用。
图8为一个实施例中应用发布方法的原理示意图。参照图8,版本A的文件集合中包括文件f1、文件f2和文件f3,在应用发布时,将文件f1切分成文件片1~4,将文件f2切分成文件片5~6,文件f3由于比较小,自身充当一个文件片7。在发布新的版本B时,将版本B的文件与版本A的文件比对,比对出,版本B相较于版本A存在差异的文件——即为文件f1和文件f2,然后对版本B中的文件f1和文件f2进行切片,得到差异文件片为文件片8、9和10。发布终端可以将文件片8和9上传,并根据差异文件片8~10的下载地址,以及与版本A相同的文件片1~2和文件片6~7的下载地址,生成版本B的文件集合清单并上传,即可以使服务器根据该版本B的文件集合清单发布包括文件片1~2、8~10以及6~7的版本B的应用。同样地,在发布版本C时,可以仅确定出差异文件片11和12上传,并根据差异文件片11~12的下载地址以及相同的文件片1、6和7的下载地址,生成版本C的文件集合清单并上传,即可以使服务器根据版本C的文件集合清单发布包括文件片1、11~12、9~10以及6~7的版本C的应用。可以理解,版本C并不限定在版本B的基础上进行更新,也可以通过比对版本C与版本A的差异文件片,直接从版本A更新至版本C。
上述实施例中,在首次发布应用时,将应用的目标版本的文件划分集合,将各文件集合中的各文件数据单独地上传,根据返回的下载地址生成文件集合清单,服务器根据文件集合清单,将包括各文件清单集合的相应文件数据的应用进行发布。相当于仅需上传各个文件数据和文件集合清单,就可以实现应用的发布,而不需要制作繁复的安装包,提高了应用发布效率。
在一个实施例中,该方法还包括:分别确定与各文件片相应的压缩算法和加密算法;按照压缩算法对各文件片进行压缩处理,得到压缩文件片;将压缩文件片按照加密算法进行加密,将加密的文件片作为文件数据;添加加密算法和压缩算法至相应文件片所对应的文件集合清单。
具体地,在对文件集合中的文件进行切片处理,得到各文件片后,发布终端可以分别确定与各文件片相应的压缩算法和加密算法。
在一个实施例中,可以以文件集合级别进行设置文件片的压缩算法和加密算法,即同一个文件集合里面的文件片使用的加密和压缩算法是相同的。在另一实施例中,也可以以文件片级别进行设置文件片的压缩算法和加密算法,即针对各个文件片分别设置相应的加密算法和压缩算法。可以理解,以文件集合级别设置文件数据的压缩算法和加密算法,相较于以文件数据级别设置而言,能够更加便捷、高效地使用文件数据,从而提高了文件数据的复用性。
在其他实施例中,还可以不区分级别,而是针对所有的文件片都设置相同的压缩算法和加密算法。
发布终端可以按照压缩算法对各文件片进行压缩处理,得到压缩文件片,并将压缩文件片按照加密算法进行加密,将加密的文件片作为文件数据。发布终端可以添加加密算法和压缩算法至相应文件片所对应的文件集合清单。
在一个实施例中,文件集合清单除了包括文件数据的下载地址和文件数据的加密算法和压缩算法以外,还可以包括与文件数据相关的其他信息以及文件集合的集合信息。具体可以参见表1中所列的信息,在此不进行赘述。
上述实施例中,对文件片进行加密和压缩处理后,再进行发布,提高了安全性。
如图9所示,在一个实施例中,提供了一种应用下载装置900,该装置900包括:获取模块902、下载模块904以及安装模块906,其中:
获取模块902,用于获取应用的文件集合清单的清单下载地址。
下载模块904,用于按照清单下载地址,下载相应文件集合清单;从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址;按照各数据下载地址,多线程地下载相应的文件数据。
安装模块906,用于根据文件数据安装应用。
在一个实施例中,下载模块904还用于分别获取所下载的各文件集合清单所对应的文件集合标识;发送携带文件集合标识的密钥请求;接收针对密钥请求反馈的密钥;根据密钥解密相应文件集合清单。
在一个实施例中,文件数据是文件片;该文件片,由对应用包括的文件进行切片得到。下载模块904还用于从文件片的数据下载地址所属的文件集合清单中,确定与文件片相应的加密算法和压缩算法;按照加密算法,对下载的文件片进行解密处理;将解密处理后的文件片按照压缩算法进行解压缩。
在一个实施例中,文件数据是文件片。下载模块904还用于针对每个文件片,根据文件片的数据下载地址所属的文件集合清单,对文件片进行唯一性校验;当对文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载文件片。
在一个实施例中,安装模块906还用于当对文件片的唯一性校验通过时,则在针对与文件片相应的文件集合清单所创建的空文件中,写入文件片;针对每个文件集合清单,在将与文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当完整性校验未通过时,则通知下载模块904返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
在一个实施例中,安装模块906还用于在对每个文件集合清单所对应的文件的完整性校验皆通过后,则针对所述应用获取用于写入注册表的信息;将获取的所述信息写入注册表;在注册表写入完毕后,创建所述应用的快捷方式。
如图10所示,在一个实施例中,提供了一种应用更新装置1000,该装置1000包括:获取模块1002、差异文件数据下载模块1004以及更新模块1006,其中:
获取模块1002,用于获取应用的目标版本的各第一文件集合清单;确定应用安装于本地的原始版本的各第二文件集合清单;
差异文件数据下载模块1004,用于将第一文件集合清单和第二文件集合清单进行差异性比对;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;按照各下载地址,多线程地下载相应差异文件数据;
更新模块1006,用于根据差异文件数据,在本地将应用由原始版本更新至目标版本。
在一个实施例中,该装置还包括:
删除模块(图中未示出),用于当比对结果表示第二文件集合清单对应多余文件数据时,从本地安装的原始版本的文件中查找多余文件数据;从本地中删除多余文件数据。
在一个实施例中,删除模块还用于从第二文件集合清单中提取与多余文件数据对应的唯一性信息;将从本地查找的多余文件数据与唯一性信息匹配;当匹配通过时,则执行从本地中删除多余文件数据的步骤。
在一个实施例中,文件数据为文件片;差异文件数据下载模块1004还用于当比对结果表示第一文件集合清单对应新增文件时,则从第一文件集合清单中,获取新增文件对应的各文件片的下载地址。
在一个实施例中,文件数据为文件片;差异文件数据下载模块1004还用于
将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对; 当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,则从第一文件集合清单中,获取更新文件中的更新文件片的下载地址。
在一个实施例中,获取模块1002还用于从第一文件集合清单中,获取与更新文件对应的各文件片的第一唯一性信息;从第二文件集合清单中,获取更新文件的本地同类型文件中的各文件片的第二唯一性信息;将第一唯一性信息和第二唯一性信息进行比对,确定更新文件中与本地同类型文件中不匹配的文件片,作为更新文件片;从第一文件集合清单中,获取更新文件片的下载地址。
在一个实施例中,获取模块1002还用于获取应用的目标版本的第一文件集合标识;确定应用安装于本地的原始版本的第二文件集合标识;当第一文件集合标识和第二文件集合标识一致时,则执行获取应用的目标版本的各第一文件集合清单的步骤。
在一个实施例中,获取模块1002还用于当确定出存在相较于第一文件集合标识多余的第二文件集合标识时,则调整删除模块从本地中删除多余的第二文件集合标识所对应的文件集合;或,当确定出存在相较于第二文件集合标识新增的第一文件集合标识时,则通知差异文件数据下载模块1004下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件数据,并根据新增的文件数据,在本地将应用由原始版本更新至目标版本。
如图11所示,在一个实施例中,提供了一种应用发布装置1100,该装置1100包括:差异确定模块1102、下载地址获取模块1104以及发布模块1106,其中:
差异确定模块1102,用于确定应用的目标版本相较于原始版本的差异文件数据。
下载地址获取模块1104,用于上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;获取所述原始版本的第二文件集合清单;根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址。
发布模块1106,用于根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
在一个实施例中,差异确定模块1102还用于获取应用的目标版本的各文件和原始版本的各文件;将目标版本的各文件和原始版本的各文件进行差异性比对;将比对得到的目标版本相较于原始版本存在差异的文件进行切片;从切片后的文件片中,确定出差异文件片。
在一个实施例中,发布模块1106还用于当应用不存在已发布的原始版本时,则将应用的目标版本的文件进行集合划分,得到相应文件集合;根据各文件集合,确定相应的文件数据;上传文件数据,并获取反馈的文件数据的下载地址;针对每个文件集合,生成包括相应文件数据的下载地址的文件集合清单;上传各文件清单集合;各文件清单集合,用于指示服务器将包括各文件清单集合的相应文件数据的应用进行发布。
在一个实施例中,发布模块1106还用于针对每个文件集合,获取文件集合中的文件;确定预先设置的文件切片规则;按照文件切片规则,对文件集合中的文件进行切片处理,得到相应各文件片作为文件数据。
在一个实施例中,发布模块1106还用于分别确定与各文件片相应的压缩算法和加密算法;按照压缩算法对各文件片进行压缩处理,得到压缩文件片;将压缩文件片按照加密算法进行加密,将加密的文件片作为文件数据;添加加密算法和压缩算法至相应文件片所对应的文件集合清单。
图12为一个实施例中计算机设备的内部结构示意图。参照图12,该计算机设备可以是图1A或图1B中所示的下载终端110或发布终端130。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序。该计算机程序被执行时,可使得处理器执行一种应用下载方法和/或应用更新方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种应用下载方法和/或应用更新方法。计算机设备的网络接口用于进行网络通信。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏等。计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该计算机设备可以是个人计算机、移动终端或车载设备,移动终端包括手机、平板电脑、个人数字助理或可穿戴设备等中的至少一种。
本领域开发人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的应用下载装置和/或应用更新装置可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行,计算机设备的非易失性存储介质可存储组成该应用下载装置和/或应用更新装置的各个程序模块。比如,图9所示的获取模块902、下载模块904以及安装模块906,或,图10所示的获取模块1002、差异文件数据下载模块1004以及更新模块1006。各个程序模块所组成的计算机程序用于使该计算机设备执行本说明书中描述的本申请各个实施例的应用下载方法和/或应用更新方法中的步骤。
例如,计算机设备可以通过如图9所示的应用下载装置900中的获取模块902获取应用的文件集合清单的清单下载地址,并通过下载模块904按照清单下载地址,下载相应文件集合清单;从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址;按照各数据下载地址,多线程地下载相应的文件数据。计算机设备可以通过安装模块906根据文件数据安装应用。
又例如,计算机设备可以通过如图10所示的应用更新装置1000中的获取模块1002获取应用的目标版本的各第一文件集合清单;确定应用安装于本地的原始版本的各第二文件集合清单。计算机设备可以通过差异文件数据下载模块1004将第一文件集合清单和第二文件集合清单进行差异性比对;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;按照各下载地址,多线程地下载相应差异文件数据。计算机设备可以通过更新模块1006根据差异文件数据,在本地将应用由原始版本更新至目标版本。
图13为一个实施例中计算机设备的内部结构示意图。参照图13,该计算机设备可以是图1A中所示的服务器120。可以理解,计算机设备也可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序。该计算机程序被执行时,可使得处理器执行一种应用发布方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种应用发布方法。计算机设备的网络接口用于进行网络通信。
本领域开发人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的应用发布装置可以实现为一种计算机程序的形式,计算机程序可在如图13所示的计算机设备上运行,计算机设备的非易失性存储介质可存储组成该应用发布装置的各个程序模块,比如,图11所示的差异确定模块1102、下载地址获取模块1104以及发布模块1106。各个程序模块所组成的计算机程序用于使该计算机设备执行本说明书中描述的本申请各个实施例的应用发布方法中的步骤,例如,计算机设备可以通过如图11所示的应用发布装置1100中的差异确定模块1102确定应用的目标版本相较于原始版本的差异文件数据。计算机设备可以通过下载地址获取模块1104上传差异文件数据,并获取反馈的与所述差异文件数据相应的下载地址;获取所述原始版本的第二文件集合清单;根据所述差异文件数据,从第二文件集合清单中,确定所述原始版本与目标版本相同的文件数据的下载地址。计算机设备可以通过发布模块1106根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的文件集合清单的清单下载地址;按照清单下载地址,下载相应文件集合清单;从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址;按照各数据下载地址,多线程地下载相应的文件数据;根据文件数据安装应用。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:
分别获取所下载的各文件集合清单所对应的文件集合标识;发送携带文件集合标识的密钥请求;接收针对密钥请求反馈的密钥;根据密钥解密相应文件集合清单。
在一个实施例中,文件数据是文件片;文件片,由对应用包括的文件进行切片得到;计算机程序被处理器执行时,使得处理器执行如下步骤:从文件片的数据下载地址所属的文件集合清单中,确定与文件片相应的加密算法和压缩算法;按照加密算法,对下载的文件片进行解密处理;将解密处理后的文件片按照压缩算法进行解压缩。
在一个实施例中,文件数据是文件片;计算机程序被处理器执行时,使得处理器执行如下步骤:针对每个文件片,根据文件片的数据下载地址所属的文件集合清单,对文件片进行唯一性校验;当对文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载文件片。
在一个实施例中,根据所述文件数据安装所述应用包括:当对文件片的唯一性校验通过时,则在针对与文件片相应的文件集合清单所创建的空文件中,写入文件片;针对每个文件集合清单,在将与文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当完整性校验未通过时,则返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
在一个实施例中,根据所述文件数据安装所述应用还包括:在对每个文件集合清单所对应的文件的完整性校验皆通过后,则针对所述应用获取用于写入注册表的信息;将获取的所述信息写入注册表;在注册表写入完毕后,创建所述应用的快捷方式。
一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的目标版本的各第一文件集合清单;确定应用安装于本地的原始版本的各第二文件集合清单;将第一文件集合清单和第二文件集合清单进行差异性比对;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;按照各下载地址,多线程地下载相应差异文件数据;根据差异文件数据,在本地将应用由原始版本更新至目标版本。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当比对结果表示第二文件集合清单对应多余文件数据时,从本地安装的原始版本的文件中查找多余文件数据;从本地中删除多余文件数据。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:从第二文件集合清单中提取与多余文件数据对应的唯一性信息;将从本地查找的多余文件数据与唯一性信息匹配;当匹配通过时,则执行从本地中删除多余文件数据的步骤。
在一个实施例中,文件数据为文件片;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址包括:当比对结果表示第一文件集合清单对应新增文件时,则从第一文件集合清单中,获取新增文件对应的各文件片的下载地址。
在一个实施例中,文件数据为文件片;将第一文件集合清单和第二文件集合清单进行差异性比对包括:将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对;根据比对结果,确定目标版本相较于原始版本的差异文件数据的下载地址包括:当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,则从第一文件集合清单中,获取更新文件中的更新文件片的下载地址。
在一个实施例中,从第一文件集合清单中,获取更新文件中的更新文件片的下载地址包括:从第一文件集合清单中,获取与更新文件对应的各文件片的第一唯一性信息;从第二文件集合清单中,获取更新文件的本地同类型文件中的各文件片的第二唯一性信息;将第一唯一性信息和第二唯一性信息进行比对,确定更新文件中与本地同类型文件中不匹配的文件片,作为更新文件片;从第一文件集合清单中,获取更新文件片的下载地址。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的目标版本的第一文件集合标识;确定应用安装于本地的原始版本的第二文件集合标识;当第一文件集合标识和第二文件集合标识一致时,则执行获取应用的目标版本的各第一文件集合清单的步骤。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当存在相较于第一文件集合标识多余的第二文件集合标识时,则从本地中删除多余的第二文件集合标识所对应的文件集合;或,当存在相较于第二文件集合标识新增的第一文件集合标识时,则下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件数据,并根据新增的文件数据,在本地将应用由原始版本更新至目标版本。
一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如下步骤:确定应用的目标版本相较于原始版本的差异文件数据;上传差异文件数据,并获取反馈的与差异文件数据相应的下载地址;获取原始版本的第二文件集合清单;根据差异文件数据,从第二文件集合清单中,确定原始版本与目标版本相同的文件数据的下载地址;根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
在一个实施例中,确定应用的目标版本相较于原始版本的差异文件数据包括:获取应用的目标版本的各文件和原始版本的各文件;将目标版本的各文件和原始版本的各文件进行差异性比对;将比对得到的目标版本相较于原始版本存在差异的文件进行切片;从切片后的文件片中,确定出差异文件片。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当应用不存在已发布的原始版本时,则将应用的目标版本的文件进行集合划分,得到相应文件集合;根据各文件集合,确定相应的文件数据;上传文件数据,并获取反馈的文件数据的下载地址;针对每个文件集合,生成包括相应文件数据的下载地址的文件集合清单;上传各文件清单集合;各文件清单集合,用于指示服务器将包括各文件清单集合的相应文件数据的应用进行发布。
在一个实施例中,根据各文件集合,确定相应的文件数据包括:针对每个文件集合,获取文件集合中的文件;确定预先设置的文件切片规则;按照文件切片规则,对文件集合中的文件进行切片处理,得到相应各文件片作为文件数据。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:分别确定与各文件片相应的压缩算法和加密算法;按照压缩算法对各文件片进行压缩处理,得到压缩文件片;将压缩文件片按照加密算法进行加密,将加密的文件片作为文件数据;添加加密算法和压缩算法至相应文件片所对应的文件集合清单。
一种存储有计算机程序的存储介质,所述计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的文件集合清单的清单下载地址;按照清单下载地址,下载相应文件集合清单;从文件集合清单中,分别提取包括于应用的各文件数据的数据下载地址;按照各数据下载地址,多线程地下载相应的文件数据;根据文件数据安装应用。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:
分别获取所下载的各文件集合清单所对应的文件集合标识;发送携带文件集合标识的密钥请求;接收针对密钥请求反馈的密钥;根据密钥解密相应文件集合清单。
在一个实施例中,文件数据是文件片;文件片,由对应用包括的文件进行切片得到;计算机程序被处理器执行时,使得处理器执行如下步骤:从文件片的数据下载地址所属的文件集合清单中,确定与文件片相应的加密算法和压缩算法;按照加密算法,对下载的文件片进行解密处理;将解密处理后的文件片按照压缩算法进行解压缩。
在一个实施例中,文件数据是文件片;计算机程序被处理器执行时,使得处理器执行如下步骤:针对每个文件片,根据文件片的数据下载地址所属的文件集合清单,对文件片进行唯一性校验;当对文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载文件片。
在一个实施例中,根据所述文件数据安装所述应用包括:当对文件片的唯一性校验通过时,则在针对与文件片相应的文件集合清单所创建的空文件中,写入文件片;针对每个文件集合清单,在将与文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当完整性校验未通过时,则返回按照各数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
在一个实施例中,根据所述文件数据安装所述应用还包括:在对每个文件集合清单所对应的文件的完整性校验皆通过后,则针对所述应用获取用于写入注册表的信息;将获取的所述信息写入注册表;在注册表写入完毕后,创建所述应用的快捷方式。
一种存储有计算机程序的存储介质,所述计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的目标版本的各第一文件集合清单;确定应用安装于本地的原始版本的各第二文件集合清单;将第一文件集合清单和第二文件集合清单进行差异性比对;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址;按照各下载地址,多线程地下载相应差异文件数据;根据差异文件数据,在本地将应用由原始版本更新至目标版本。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当比对结果表示第二文件集合清单对应多余文件数据时,从本地安装的原始版本的文件中查找多余文件数据;从本地中删除多余文件数据。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:从第二文件集合清单中提取与多余文件数据对应的唯一性信息;将从本地查找的多余文件数据与唯一性信息匹配;当匹配通过时,则执行从本地中删除多余文件数据的步骤。
在一个实施例中,文件数据为文件片;根据比对结果,确定目标版本相较原始版本的差异文件数据的下载地址包括:当比对结果表示第一文件集合清单对应新增文件时,则从第一文件集合清单中,获取新增文件对应的各文件片的下载地址。
在一个实施例中,文件数据为文件片;将第一文件集合清单和第二文件集合清单进行差异性比对包括:将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对;根据比对结果,确定目标版本相较于原始版本的差异文件数据的下载地址包括:当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,则从第一文件集合清单中,获取更新文件中的更新文件片的下载地址。
在一个实施例中,从第一文件集合清单中,获取更新文件中的更新文件片的下载地址包括:从第一文件集合清单中,获取与更新文件对应的各文件片的第一唯一性信息;从第二文件集合清单中,获取更新文件的本地同类型文件中的各文件片的第二唯一性信息;将第一唯一性信息和第二唯一性信息进行比对,确定更新文件中与本地同类型文件中不匹配的文件片,作为更新文件片;从第一文件集合清单中,获取更新文件片的下载地址。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:获取应用的目标版本的第一文件集合标识;确定应用安装于本地的原始版本的第二文件集合标识;当第一文件集合标识和第二文件集合标识一致时,则执行获取应用的目标版本的各第一文件集合清单的步骤。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当存在相较于第一文件集合标识多余的第二文件集合标识时,则从本地中删除多余的第二文件集合标识所对应的文件集合;或,当存在相较于第二文件集合标识新增的第一文件集合标识时,则下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件数据,并根据新增的文件数据,在本地将应用由原始版本更新至目标版本。
一种存储有计算机程序的存储介质,所述计算机程序被处理器执行时,使得处理器执行如下步骤:确定应用的目标版本相较于原始版本的差异文件数据;上传差异文件数据,并获取反馈的与差异文件数据相应的下载地址;获取原始版本的第二文件集合清单;根据差异文件数据,从第二文件集合清单中,确定原始版本与目标版本相同的文件数据的下载地址;根据差异文件数据的下载地址和相同的文件数据的下载地址,生成目标版本的第一文件集合清单并上传;第一文件集合清单,用于指示服务器根据第一文件集合清单,发布包括差异文件数据和相同的文件数据的目标版本的应用。
在一个实施例中,确定应用的目标版本相较于原始版本的差异文件数据包括:获取应用的目标版本的各文件和原始版本的各文件;将目标版本的各文件和原始版本的各文件进行差异性比对;将比对得到的目标版本相较于原始版本存在差异的文件进行切片;从切片后的文件片中,确定出差异文件片。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:当应用不存在已发布的原始版本时,则将应用的目标版本的文件进行集合划分,得到相应文件集合;根据各文件集合,确定相应的文件数据;上传文件数据,并获取反馈的文件数据的下载地址;针对每个文件集合,生成包括相应文件数据的下载地址的文件集合清单;上传各文件清单集合;各文件清单集合,用于指示服务器将包括各文件清单集合的相应文件数据的应用进行发布。
在一个实施例中,根据各文件集合,确定相应的文件数据包括:针对每个文件集合,获取文件集合中的文件;确定预先设置的文件切片规则;按照文件切片规则,对文件集合中的文件进行切片处理,得到相应各文件片作为文件数据。
在一个实施例中,计算机程序被处理器执行时,使得处理器执行如下步骤:分别确定与各文件片相应的压缩算法和加密算法;按照压缩算法对各文件片进行压缩处理,得到压缩文件片;将压缩文件片按照加密算法进行加密,将加密的文件片作为文件数据;添加加密算法和压缩算法至相应文件片所对应的文件集合清单。
应该理解的是,虽然本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通开发人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通开发人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (28)

1.一种应用下载方法,所述方法包括:
获取应用的文件集合清单的清单下载地址;所述文件集合清单,是文件集合的清单;所述文件集合是所述应用所包括的文件数据的集合;
按照所述清单下载地址,下载相应文件集合清单;所述文件集合清单中,包括文件集合的集合信息和所述文件集合中所包括的文件数据的相关信息;所述文件集合的集合信息,是描述的文件集合级别的信息;所述文件数据的相关信息,是与文件数据相关的信息,包括所述文件数据的数据下载地址;
针对每个文件集合清单,从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;所述包括于应用的文件数据,是所述应用所包括的文件数据;
按照各所述数据下载地址,多线程地下载相应的文件数据;
从所述文件集合清单中的所述文件集合的集合信息中,确定以文件集合级别针对所述文件集合清单所表征的文件集合设置的压缩算法和加密算法;
按照所述加密算法,对下载的所述文件数据进行解密处理;
将解密处理后的文件数据按照所述压缩算法进行解压缩;
根据解压缩处理后的所述文件数据安装所述应用。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
分别获取所下载的各文件集合清单所对应的文件集合标识;
发送携带所述文件集合标识的密钥请求;
接收针对所述密钥请求反馈的密钥;
根据所述密钥解密相应文件集合清单。
3.根据权利要求1所述的方法,其特征在于,所述文件数据是文件片;所述文件片,由对所述应用包括的文件进行切片得到。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述文件数据是文件片;
所述方法还包括:
针对每个文件片,根据所述文件片的数据下载地址所属的文件集合清单,对所述文件片进行唯一性校验;
当对所述文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载所述文件片。
5.根据权利要求4所述的方法,其特征在于,所述根据所述文件数据安装所述应用包括:
当对所述文件片的唯一性校验通过时,则在针对与所述文件片相应的文件集合清单所创建的空文件中,写入所述文件片;
针对每个文件集合清单,在将与所述文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;
当所述完整性校验未通过时,则返回所述按照各所述数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
6.根据权利要求5所述的方法,其特征在于,所述根据所述文件数据安装所述应用还包括:
在对每个文件集合清单所对应的文件的完整性校验皆通过后,则
针对所述应用获取用于写入注册表的信息;
将获取的所述信息写入注册表;
在注册表写入完毕后,创建所述应用的快捷方式。
7.一种应用更新方法,所述方法包括:
获取应用的目标版本的各第一文件集合清单;所述第一文件集合清单,是所述应用的目标版本所包括的文件片的集合的清单;所述第一文件集合清单中,包括所述目标版本的文件集合的集合信息和所述文件集合中所包括的文件数据的相关信息;所述文件集合的集合信息,是描述的文件集合级别的信息;所述文件数据的相关信息,是与文件数据相关的信息,包括所述文件数据的数据下载地址;
确定所述应用安装于本地的原始版本的各第二文件集合清单;
将所述第一文件集合清单和第二文件集合清单进行差异性比对;
当比对结果表示第一文件集合清单对应新增文件时,则从所述第一文件集合清单中,获取所述新增文件对应的各文件片的下载地址;
按照各所述下载地址,多线程地下载相应差异文件片;
从所述第一文件集合清单中的所述文件集合的集合信息中,确定以文件集合级别针对所述第一文件集合清单所表征的文件集合设置的压缩算法和加密算法;
按照所述加密算法,对下载的所述差异文件片进行解密处理;
将解密处理后的差异文件片按照所述压缩算法进行解压缩;
根据解压缩后的差异文件片,在本地将所述应用由原始版本更新至目标版本。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
当比对结果表示第二文件集合清单对应多余文件片时,从本地安装的原始版本的文件中查找所述多余文件片;从本地中删除所述多余文件片。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
从第二文件集合清单中提取与所述多余文件片对应的唯一性信息;
将从本地查找的所述多余文件片与所述唯一性信息匹配;
当匹配通过时,则执行所述从本地中删除所述多余文件片的步骤。
10.根据权利要求7所述的方法,其特征在于,所述文件数据为文件片;所述将所述第一文件集合清单和第二文件集合清单进行差异性比对包括:
将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对;
所述根据比对结果,确定目标版本相较原始版本的差异文件片的下载地址包括:
当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,则
从第一文件集合清单中,获取所述更新文件中的更新文件片的下载地址。
11.根据权利要求10所述的方法,其特征在于,所述从第一文件集合清单中,获取所述更新文件中的更新文件片的下载地址包括:
从第一文件集合清单中,获取与所述更新文件对应的各文件片的第一唯一性信息;
从第二文件集合清单中,获取所述更新文件的本地同类型文件中的各文件片的第二唯一性信息;
将第一唯一性信息和第二唯一性信息进行比对,确定所述更新文件中与所述本地同类型文件中不匹配的文件片,作为更新文件片;
从所述第一文件集合清单中,获取所述更新文件片的下载地址。
12.根据权利要求7至11中任一项所述的方法,其特征在于,所述方法还包括:
获取应用的目标版本的第一文件集合标识;
确定所述应用安装于本地的原始版本的第二文件集合标识;
当第一文件集合标识和第二文件集合标识一致时,则执行所述获取应用的目标版本的各第一文件集合清单的步骤。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
当存在相较于第一文件集合标识多余的第二文件集合标识时,则从本地中删除所述多余的第二文件集合标识所对应的文件集合;
或,
当存在相较于第二文件集合标识新增的第一文件集合标识时,则
下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件片,并根据所述新增的文件片,在本地将所述应用由原始版本更新至目标版本。
14.一种应用下载装置,所述装置包括:
获取模块,用于获取应用的文件集合清单的清单下载地址;所述文件集合清单,是文件集合的清单;所述文件集合是所述应用所包括的文件数据的集合;
下载模块,用于按照所述清单下载地址,下载相应文件集合清单;所述文件集合清单中,包括文件集合的集合信息和所述文件集合中所包括的文件数据的相关信息;所述文件集合的集合信息,是描述的文件集合级别的信息;所述文件数据的相关信息,是与文件数据相关的信息,包括所述文件数据的数据下载地址;针对每个文件集合清单,从所述文件集合清单中,分别提取包括于所述应用的各文件数据的数据下载地址;按照各所述数据下载地址,多线程地下载相应的文件数据;从所述文件集合清单中的所述文件集合的集合信息中,确定以文件集合级别针对所述文件集合清单所表征的文件集合设置的压缩算法和加密算法; 按照所述加密算法,对下载的所述文件数据进行解密处理;将解密处理后的文件数据按照所述压缩算法进行解压缩;
安装模块,用于根据解压缩处理后的所述文件数据安装所述应用。
15.根据权利要求14所述的装置,其特征在于,所述下载模块还用于分别获取所下载的各文件集合清单所对应的文件集合标识;发送携带所述文件集合标识的密钥请求;接收针对所述密钥请求反馈的密钥;根据所述密钥解密相应文件集合清单。
16.根据权利要求14所述的装置,其特征在于,所述文件数据是文件片;所述文件片,由对所述应用包括的文件进行切片得到。
17.根据权利要求14至16中任一项所述的装置,其特征在于,所述文件数据是文件片;所述下载模块还用于针对每个文件片,根据所述文件片的数据下载地址所属的文件集合清单,对所述文件片进行唯一性校验;当对所述文件片的唯一性校验不通过时,则重新按照相应数据下载地址下载所述文件片。
18.根据权利要求17所述的装置,其特征在于,所述安装模块还用于当对所述文件片的唯一性校验通过时,则在针对与所述文件片相应的文件集合清单所创建的空文件中,写入所述文件片;针对每个文件集合清单,在将与所述文件集合清单相应的文件片皆写入对应空文件后,对写入后得到的文件进行完整性校验;当所述完整性校验未通过时,则通知所述下载模块返回所述按照各所述数据下载地址,多线程地下载相应的文件数据的步骤,以继续执行。
19.根据权利要求18所述的装置,其特征在于,所述安装模块还用于在对每个文件集合清单所对应的文件的完整性校验皆通过后,则针对所述应用获取用于写入注册表的信息;将获取的所述信息写入注册表;在注册表写入完毕后,创建所述应用的快捷方式。
20.一种应用更新装置,所述装置包括:
获取模块,用于获取应用的目标版本的各第一文件集合清单;确定所述应用安装于本地的原始版本的各第二文件集合清单;所述第一文件集合清单,是所述应用的目标版本所包括的文件片的集合的清单;所述第一文件集合清单中,包括所述目标版本的文件集合的集合信息和所述文件集合中所包括的文件数据的相关信息;所述文件集合的集合信息,是描述的文件集合级别的信息;所述文件数据的相关信息,是与文件数据相关的信息,包括所述文件数据的数据下载地址;
差异文件数据下载模块,用于将所述第一文件集合清单和第二文件集合清单进行差异性比对;当比对结果表示第一文件集合清单对应新增文件时,则从所述第一文件集合清单中,获取所述新增文件对应的各文件片的下载地址;按照各所述下载地址,多线程地下载相应差异文件片;从所述第一文件集合清单中的所述文件集合的集合信息中,确定以文件集合级别针对所述第一文件集合清单所表征的文件集合设置的压缩算法和加密算法; 按照所述加密算法,对下载的所述差异文件片进行解密处理;将解密处理后的差异文件片按照所述压缩算法进行解压缩;
更新模块,用于根据解压缩后的差异文件片,在本地将所述应用由原始版本更新至目标版本。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
删除模块,用于当比对结果表示第二文件集合清单对应多余文件片时,从本地安装的原始版本的文件中查找所述多余文件片;从本地中删除所述多余文件片。
22.根据权利要求21所述的装置,其特征在于,所述删除模块还用于从第二文件集合清单中提取与所述多余文件片对应的唯一性信息;将从本地查找的所述多余文件片与所述唯一性信息匹配;当匹配通过时,则执行所述从本地中删除所述多余文件片的步骤。
23.根据权利要求20所述的装置,其特征在于,所述文件片为文件片;所述差异文件片下载模块还用于将同一类型的文件在第一文件集合清单中的唯一性信息和在第二文件集合清单中的唯一性信息进行比对;当比对结果表示第一文件集合清单对应存在内容更新的更新文件时,则从第一文件集合清单中,获取所述更新文件中的更新文件片的下载地址。
24.根据权利要求23所述的装置,其特征在于,所述获取模块还用于从第一文件集合清单中,获取与所述更新文件对应的各文件片的第一唯一性信息;从第二文件集合清单中,获取所述更新文件的本地同类型文件中的各文件片的第二唯一性信息;将第一唯一性信息和第二唯一性信息进行比对,确定所述更新文件中与所述本地同类型文件中不匹配的文件片,作为更新文件片;从所述第一文件集合清单中,获取所述更新文件片的下载地址。
25.根据权利要求20至24中任一项所述的装置,其特征在于,所述获取模块还用于获取应用的目标版本的第一文件集合标识;确定所述应用安装于本地的原始版本的第二文件集合标识;当第一文件集合标识和第二文件集合标识一致时,则执行所述获取应用的目标版本的各第一文件集合清单的步骤。
26.根据权利要求25所述的装置,其特征在于,所述获取模块还用于当存在相较于第一文件集合标识多余的第二文件集合标识时,则从本地中删除所述多余的第二文件集合标识所对应的文件集合;或,当存在相较于第二文件集合标识新增的第一文件集合标识时,则下载与新增的第一文件集合标识对应的文件集合所包括的新增的文件片,并根据所述新增的文件片,在本地将所述应用由原始版本更新至目标版本。
27.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至13中任一项所述方法的步骤。
28.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至13中任一项所述方法的步骤。
CN201811250080.0A 2018-10-25 2018-10-25 应用下载和更新方法、装置、计算机设备及存储介质 Active CN109309725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811250080.0A CN109309725B (zh) 2018-10-25 2018-10-25 应用下载和更新方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811250080.0A CN109309725B (zh) 2018-10-25 2018-10-25 应用下载和更新方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN109309725A CN109309725A (zh) 2019-02-05
CN109309725B true CN109309725B (zh) 2021-10-08

Family

ID=65221904

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811250080.0A Active CN109309725B (zh) 2018-10-25 2018-10-25 应用下载和更新方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN109309725B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109859572A (zh) * 2019-02-19 2019-06-07 深圳点猫科技有限公司 一种基于教育云平台的课堂应用方法及教师终端
CN110659081B (zh) * 2019-09-10 2022-12-27 北京达佳互联信息技术有限公司 用于程序对象的文件处理方法、装置及电子设备
CN110597549B (zh) * 2019-09-20 2023-08-22 网易(杭州)网络有限公司 代码工程中的搜索方法、装置、设备及可读存储介质
CN111614750B (zh) * 2020-05-19 2023-05-12 深圳市网心科技有限公司 一种数据更新方法、系统、设备及存储介质
CN112286540A (zh) * 2020-10-30 2021-01-29 青岛海信传媒网络技术有限公司 应用软件安装方法、终端及显示设备
CN112887297B (zh) * 2021-01-22 2022-09-02 支付宝(杭州)信息技术有限公司 保护隐私的差异数据确定方法、装置、设备及系统
CN114915618B (zh) * 2021-01-29 2023-09-12 华为技术有限公司 升级包下载方法及装置
CN115080141A (zh) * 2022-06-02 2022-09-20 珠海金山数字网络科技有限公司 数据处理方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188305A (zh) * 2011-12-30 2013-07-03 北大方正集团有限公司 一种多线程断点续传方法及系统
CN103699410A (zh) * 2013-12-20 2014-04-02 北京奇虎科技有限公司 一种应用程序的更新方法和装置
CN105930197A (zh) * 2016-06-28 2016-09-07 乐视控股(北京)有限公司 一种软件升级的方法及电子设备
CN106790525A (zh) * 2016-12-20 2017-05-31 广东小天才科技有限公司 一种文件下载方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8245136B2 (en) * 2006-02-23 2012-08-14 Olivier Fischer Updating inserted text in a graphic file
CN104484198A (zh) * 2014-12-04 2015-04-01 北京奇虎科技有限公司 一种安装应用程序的方法和装置
CN106528125A (zh) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 一种数据文件的增量更新方法和服务器、客户端以及系统
CN108108203B (zh) * 2016-11-25 2021-02-26 斑马智行网络(香港)有限公司 用于安装包下载安装过程的方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188305A (zh) * 2011-12-30 2013-07-03 北大方正集团有限公司 一种多线程断点续传方法及系统
CN103699410A (zh) * 2013-12-20 2014-04-02 北京奇虎科技有限公司 一种应用程序的更新方法和装置
CN105930197A (zh) * 2016-06-28 2016-09-07 乐视控股(北京)有限公司 一种软件升级的方法及电子设备
CN106790525A (zh) * 2016-12-20 2017-05-31 广东小天才科技有限公司 一种文件下载方法及装置

Also Published As

Publication number Publication date
CN109309725A (zh) 2019-02-05

Similar Documents

Publication Publication Date Title
CN109309725B (zh) 应用下载和更新方法、装置、计算机设备及存储介质
US9600683B1 (en) Protecting data in insecure cloud storage
CN112256663A (zh) 基于区块链的分布式文件存储方法及系统
US8565422B2 (en) Method and system for enryption key versioning and key rotation in a multi-tenant environment
US10602202B1 (en) System and techniques for digital data lineage verification
US10284433B2 (en) Data synchronization using redundancy detection
US9910906B2 (en) Data synchronization using redundancy detection
Martini et al. Mobile cloud forensics: An analysis of seven popular Android apps
US20120260096A1 (en) Method and system for monitoring a secure document
US11860680B2 (en) Software pipeline and release validation
CN111008034B (zh) 一种补丁生成方法及装置
CN111143869A (zh) 应用程序包处理方法、装置、电子设备及存储介质
CN107239299B (zh) 插件升级方法及装置
CN110119390B (zh) 基于区块链的金融信息外包管理系统
CN111897846A (zh) 缓存数据校验方法、装置、设备及存储介质
CN103067519A (zh) 一种异构平台下数据分布存储的方法及装置
CN110597820A (zh) 基于区块链的信息处理方法、装置、存储介质和设备
US11055428B1 (en) Systems and methods for encrypted container image management, deployment, and execution
US20230351050A1 (en) Method and apparatus for custom development of payment application, computer device, and storage medium
CN113661491A (zh) 用于加密和更新虚拟盘的方法
CN113590994A (zh) 数据处理方法、装置、计算机设备和存储介质
CN111324914B (zh) 文件的传输方法、装置、服务器、设备和介质
CN111417927B (zh) 资源权限处理方法、装置、存储介质及芯片
US10162626B2 (en) Ordered cache tiering for program build files
US20190227991A1 (en) Synchronizing Different Representations of Content

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
GR01 Patent grant
GR01 Patent grant