数据下载方法和装置、存储介质及电子装置与流程

文档序号:17158615发布日期:2019-03-20 00:19阅读:200来源:国知局
数据下载方法和装置、存储介质及电子装置与流程

本发明涉及计算机领域,具体而言,涉及一种数据下载方法和装置、存储介质及电子装置。



背景技术:

为了满足用户不断变化的使用需求,终端应用开发商往往会定期发布新的应用版本,例如,新版本中将提供用于更新应用的显示样式、应用的使用方法或修复应用bug等功能的程序文件(也可称作升级数据)。其中,上述这些升级数据往往会在新版本发布前,预下载至各个账号登录应用所在的个人电脑(personalcomputer,简称pc)中,以使该新版本被发布后,可以在pc中直接执行安装过程,以节省应用版本的更新时间。

目前相关技术中提供的预下载方式包括以下至少一种,以游戏应用为例进行说明:

1)如图1所示,游戏应用的客户端自身实现升级数据的预下载功能。游戏应用的客户端通过访问升级服务器,获取游戏应用的新版本信息,以根据该新版本信息获取新版本的升级数据的下载地址,从而实现利用该下载地址从游戏应用对应的内部内容分发网络(contentdeliverynetwork,简称cdn)中下载上述升级数据,以完成游戏应用的新版本升级过程。

2)如图2所示,游戏应用关联的第三方常驻进程(如第三方应用,为第三方应用商提供的应用管理下载平台,该第三方应用管理下载平台用于定期进行游戏应用的更新信息的公布,并提供游戏应用的升级数据)实现升级数据的预下载功能,其中,上述第三方应用与游戏应用均可访问内部cdn。第三方应用通过预下载版本信息服务器获取新版本信息,该新版本信息可以为升级服务器同步发送给预下载版本信息服务器的。然后,第三方应用可以根据上述新版本信息获取新版本的升级数据的下载地址,从而实现利用该下载地址从游戏应用对应的内部cdn中下载上述升级数据,以完成游戏应用的新版本升级过程。

然而,上述预下载过程需依赖于内部cdn,也就是说,不同账号执行升级数据下载过程,都需访问内部cdn。随着访问量的增加,将难以保证下载升级数据时的安全性。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供一种数据下载方法和装置、存储介质及电子装置,以至少解决相关技术中依赖内部cdn下载升级数据所导致的下载安全性较低的技术问题。

根据本发明实施例的一个方面,提供了一种数据下载方法,包括:获取第一应用的版本更新信息,其中,上述版本更新信息中至少包括所要下载的上述第一应用的目标版本的升级数据在第一网络中的第一下载地址;根据上述第一下载地址从上述第一网络中获取上述目标版本的上述升级数据;通过第二应用的服务器将上述目标版本的上述升级数据推送至第二网络;向上述第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使上述第二应用的客户端根据获取到的上述文件列表,将上述目标版本的上述升级数据从上述第二网络下载至上述第一应用的客户端中。

根据本发明实施例的另一方面,还提供了一种数据下载装置,包括:第一获取单元,用于获取第一应用的版本更新信息,其中,上述版本更新信息中至少包括所要下载的上述第一应用的目标版本的升级数据在第一网络中的第一下载地址;第二获取单元,用于根据上述第一下载地址从上述第一网络中获取上述目标版本的上述升级数据;推送单元,用于通过第二应用的服务器将上述目标版本的上述升级数据推送至第二网络;第一处理单元,用于向上述第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使上述第二应用的客户端根据获取到的上述文件列表,将上述目标版本的上述升级数据从上述第二网络下载至上述第一应用的客户端中。

根据本发明实施例的另一方面,还提供了一种存储介质,上述存储介质包括存储的程序,其中,上述程序运行时执行上述的方法。

根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器通过上述计算机程序执行上述的方法。

在本发明实施例中,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。进而解决了相关技术中依赖内部cdn下载升级数据所导致的下载安全性较低的技术问题。此外,通过第二网络下载第一应用的目标版本的升级数据,以实现通过外部平台将第一应用的预下载数据包推送给第一应用的客户端,从而达到减少第一网络的数据处理量,降低处理承载,进而实现节省第一网络的处理带宽的效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据现有技术的一种数据下载方法的示意图;

图2是根据现有技术的一种数据下载方法的示意图;

图3是根据本发明实施例的一种可选的数据下载方法的应用环境示意图;

图4是根据本发明实施例的一种可选的数据下载方法的流程图;

图5是根据本发明实施例的一种可选的数据下载方法的示意图;

图6是根据本发明实施例的另一种可选的数据下载方法的示意图;

图7是根据本发明实施例的一种可选的平台管理应用的应用界面示意图;

图8是根据本发明实施例的一种可选的平台管理应用的图标示意图;

图9是根据本发明实施例的又一种可选的数据下载方法的示意图;

图10是根据本发明实施例的一种可选的数据下载装置的示意图;

图11是根据本发明实施例的一种可选的电子装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本发明实施例的一方面,提供了一种上述数据下载方法的实施例。作为一种可选的实施方式,该数据下载方法可以但不限于应用于如图3所示的应用环境中,第一网络302中的下载系统304从服务器306中获取到第一应用的版本更新信息,其中,该版本更新信息中至少包括所要下载的第一应用的目标版本的升级数据在第一网络302中的第一下载地址,根据该第一下载地址从上述第一网络302中下载上述目标版本的升级数据。然后,通过第二应用的服务器308将该目标版本的升级数据推送至第二网络310,并向第二应用的服务器308发送与上述版本更新信息匹配的文件列表,以使终端312内的第二应用的客户端根据获取到的文件列表,将上述目标版本的升级数据从第二网络310下载至终端312内的第一应用的客户端中。

在本实施例中,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。此外,通过第二网络下载第一应用的目标版本的升级数据,还将减少第一网络的数据处理量,降低处理承载,进而实现节省第一网络的处理带宽的效果。

可选地,在本实施例中,上述终端可以包括但不限于以下至少之一:平板电脑、笔记本电脑、台式pc机、数字电视及其他执行预下载升级数据的硬件设备。其中,预下载是指终端提前下载更新安装包,在终端应用本身没有更新但在近期会更新,终端提前下载好更新需要的更新安装包,在游戏进行更新时立即进行更新,而不需要再次下载更新安装包。上述网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述只是一种示例,本实施例对此不做任何限定。

根据本发明实施例,提供了一种数据下载方法,如图4所示,该方法包括:

s402获取第一应用的版本更新信息,其中,版本更新信息中至少包括所要下载的第一应用的目标版本的升级数据在第一网络中的第一下载地址;

s404根据第一下载地址从第一网络中获取目标版本的升级数据;

s406通过第二应用的服务器将目标版本的升级数据推送至第二网络;

s408向第二应用的服务器发送与版本更新信息匹配的文件列表,以使第二应用的客户端根据获取到的文件列表,将目标版本的升级数据从第二网络下载至第一应用的客户端中。

可选地,在本实施例中,上述数据下载方法可以但不限于应用于不同终端应用的版本更新过程中,例如下载用于更新终端应用的升级数据(也可称作升级包)。其中,上述终端应用可以包括但不限于:游戏应用、视频播放应用、音乐播放应用、购物应用等等。上述仅是一种示例,本实施例中不限于上述应用场景。

例如,以pc端游戏应用(也可称作端游)为例进行说明,端游往往会定期发布新版本(如目标版本)的更新升级包(如升级数据),为了节省时间,通常在新版本发布之前,会将上述更新升级包预下载至端游所在终端,以便于新版本发布后,端游所在终端可以直接安装,而无需在使用游戏时再执行下载。进一步,在本实施例中,上述预下载过程可以不再依赖于开发端游的内部cdn网络(相当于第一网络),而是在通过内部网络的下载系统获取到更新升级包后,将该更新数据包推送至外部cdn网络(相当于第二网络),从而实现利用第三方应用的客户端从外部网络下载上述更新升级包至端游的客户端中。上述仅是一种示例,本实施例中对此不做任何限定。

在实际的应用场景中,第一应用的版本更新信息的第一下载地址可以但不限于指示第一应用开发者的开发环境网络或者说第一应用发布者构建的专用网络(如第一网络)中的链接地址。相应地,第二下载地址可以但不限于指示区别于第一应用所在专用网络的的外部网络(如第二网络),中,用于获取上述与所更新的版本对应的升级数据的链接地址。上述仅是一种示例,本实施例中对此不做任何限定。

需要说明的是,在本实施例中,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。此外,通过第二网络下载第一应用的目标版本的升级数据,还将减少第一网络的数据处理量,降低处理承载,进而实现节省第一网络的处理带宽的效果。

可选地,在本实施例中,上述数据下载方法可以但不限于应用于第一网络中的下载系统(也可称作对外预下载管理系统)中。其中,该下载系统可以包括但不限于具有以下功能:

1)对第一网络内部:

(1)对第一网络内的数据进行整合。如收集第一应用在不同时期发布的目标版本的版本信息,其中,该版本信息中至少包括:目标版本的版本标识及包含第一下载地址的协议文件;

(2)解析上述协议文件,以获取上述第一下载地址;

(3)生成目标版本的版本更新信息;

2)对第一网络外部:

(1)通过第二应用的服务器推送目标版本的升级数据至外部的第二网络;

(2)通过http接口获取查询请求,以发送与版本更新信息匹配的文件列表;

(3)向第二应用的服务器发送第一应用更新至目标版本的版本更新通知。

可选地,在本实施例中,上述第一网络可以但不限于为与第一应用匹配的内部cdn网络。上述第二网络可以但不限于为与第二应用匹配的外部cdn网络。也就是说,将第一应用的客户端在的版本更新过程转移至第二网络,从而达到减少不同账号访问第一网络的访问量,以保证第一网络的网络下载安全,此外,还可以减少第一网络的承载,达到分流的效果。

可选地,在本实施例中,在将上述目标版本的升级数据通过第二应用的服务器推送至第二网络之前,还可以但不限于:建立第一网络中的下载系统与第二网络中的第二应用的服务器之间的通信链路。

需要说明的是,上述第二应用的服务器可以包括但不限于以下至少之一:第二应用的后台服务器、第二应用的文件传输协议(filetransferprotocal,简称ftp)服务器。也就是说,上述下载系统可以但不限于与第二应用的不同服务器进行数据传输交互。

作为一种可选的实施方式,下载系统获取第二应用的服务器发送的操作请求,响应该操作请求为第二应用的服务器分配通信账号,并向第二应用的服务器发送通信协议,以使第二应用的服务器可以使用上述通信账号通过上述通信协议与上述下载系统进行通信。其中,上述下载系统可以但不限于通过第二应用的ftp服务器推送上述目标版本的升级数据;可以但不限于通过http接口与第二应用的后台服务器进行数据交互。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,上述下载系统可以但不限于通过整合收集到的版本信息,以使整合后的版本信息更利于不同的第二网络识别,从而实现将下载范围扩展到不同网络的效果。

需要说明的是,在本实施例中,位于不同的系统中的应用所需要的更新数据的格式不同,如在windows操作系统中,更新数据包可以为.exe、.rar等格式,而在安卓系统中可以为.apk格式,而相对ios系统以及其他例如linux等系统,更新数据包的格式也不同。因而,在本实施例中,可以但不限于按照预定格式统一整合收集到的版本信息。其中,保证按照统一的格式标准整合收集即可,而对上述预定格式的具体内容在此不做任何限定。而上述版本信息的收集方式可以包括但不限于以下至少之一:手动录入、升级服务器同步录入。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,第二应用的客户端在从第二应用的服务器获知第一应用已更新至目标版本后,可以但不限于根据获取到的文件列表,从第二网络预下载上述目标版本的升级数据至第一应用的客户端中,而无需依赖第一网络通过第一应用的客户端获取升级数据,从而实现保证第一网络的网络下载安全的同时,节省第一网络的网络带宽。

具体结合图5所示进行说明,图5示出了上述第一应用的目标版本的升级数据从第二网络进行预下载的过程。假设第一网络以第一cdn网络(内部)508为例,第二网络以第二cdn网络(外部)512为例,第一应用以游戏应用为例,第二应用以平台管理应用为例,与第一网络连接的下载系统(位于预下载版本信息服务器504中)以对外预下载管理系统504为例。预下载版本信息服务器504获取升级服务器502通过同步发送的游戏应用的更新版本(目标版本)的版本信息。如解析版本信息中的协议文件,获取更新版本的升级数据第一下载地址(url-1),以生成版本更新信息。然后,根据该第一下载地址到第一cdn网络中提前下载上述更新版本的升级数据。

进一步,将上述升级数据通过平台管理应用的ftp服务器510推送至第二cdn网络,并告知平台管理应用的后台服务器514,游戏应用已更新版本,并通知平台管理应用客户端516。平台管理应用客户端516可以从平台管理应用的后台服务器514中获取从对外预下载管理系统506中查询获取的文件列表,根据该文件列表,从第二cdn网络512中获取上述更新版本的升级数据提前下载至游戏应用客户端518中。

通过本申请提供的实施例,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。

作为一种可选的方案,在通过第二应用的服务器将目标版本的升级数据推送至第二网络之前,还包括:

s1,获取第二应用的服务器发送的操作请求;

s2,响应操作请求为第二应用的服务器分配通信账号,并向第二应用的服务器发送通信协议,以使第二应用的服务器使用通信账号通过通信协议与第一网络中的下载系统进行通信,其中,下载系统用于从第一网络中下载目标版本的升级数据。

需要说明的是,在本实施例中,第二应用在获取目标版本的升级数据之前,可以但不限于向第一应用发送操作请求,以获取第一应用提供的通信账号和通信协议,以便于实现预下载功能。可选地,在本实施例中,上述通信协议中可以但不限于包括特定协议字段。

也就是说,在本实施例中,在将目标版本的升级数据推送至第二网络之前,还可以包括但不限于:第二应用的服务器请求与第一网络中的下载系统建立通信链路。换言之,第二应用的服务器需要事先获取下载系统的授权认证,在认证通过后,请求获取为该第二应用的服务器分配的通信账号及用于通信的通信协议。从而保证第一网络的网络下载安全,以避免任意账号访问上述第一网络,所造成的安全隐患问题。

通过本申请提供的实施例,通过为授权认证后的第二应用的服务器分配对应的通信账号,通知其用于通信的通信协议,从而实现保证第一网络的通信安全性,进而保证第一网络的网络下载安全,避免信息泄露导致的安全隐患等问题。

作为一种可选的方案,通过第二应用的服务器将目标版本的升级数据推送至第二网络包括:

s1,通过第二应用的文件传输协议服务器,将目标版本的升级数据推送至第二网络中的内容分发网络服务器中。

具体结合图6所示进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,将该更新版本的升级数据推送给平台管理应用的ftp服务器510,以使平台管理应用的ftp服务器510将上述升级数据分发给第二cdn网络。

通过本申请提供的实施例,通过将第一应用的目标版本的升级数据通过第二应用的ftp服务器推送给第二网络中的内容分发网络服务器中,从而实现将第一应用的版本更新过程转移至第二网络,以达到减轻第一网络承载、节省第一网络带宽的目的,同时随着第一网络访问量的减少,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护。

作为一种可选的方案,在通过第二应用的服务器将目标版本的升级数据推送至第二网络时,或,在通过第二应用的服务器将目标版本的升级数据推送至第二网络之前,还包括:

s1,向第二应用的后台服务器发送版本更新通知,其中,版本更新通知用于通知第二应用的后台服务器第一应用已更新至目标版本。

具体结合图6所示进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,对外预下载管理系统504可以向平台管理应用的后台服务器514发送版本更新通知,以告知平台管理应用,上述游戏应用已更新版本。

通过本申请提供的实施例,通过向第二应用的后台服务器发送版本更新通知,以实现及时通知第二应用版本更新,保证第二应用的客户端可以及时从第二网络下载获取第一应用的目标版本的升级数据,从而实现提高数据下载效率,避免不必要的时间浪费。

作为一种可选的方案,向第二应用的服务器发送与版本更新信息匹配的文件列表包括:

s1通过http接口获取第二应用的后台服务器发送的查询请求;

s2响应查询请求向第二应用的后台服务器发送文件列表。

可选地,在本实施例中,在响应查询请求向第二应用的后台服务器发送文件列表之后,还包括:

s3第二应用的客户端从第二应用的后台服务器获取文件列表;

s4第二应用的客户端根据文件列表获取目标版本的升级数据在第二网络中的第二下载地址;

s5第二应用的客户端根据第二下载地址从第二网络中下载目标版本的升级数据,并存储至第一应用的客户端中。

具体结合图6所示进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,向平台管理应用的后台服务器514发送版本更新通知,以告知平台管理应用,上述游戏应用已更新版本。然后,平台管理应用的后台服务器514将向对外预下载管理系统504发送查询请求,以获取所要与更新版本相关的所有文件的文件列表。进一步,平台管理应用的后台服务器514将把获取到的文件列表发送给平台管理应用客户端516。平台管理应用客户端516根据上述文件列表将获知所要下载的文件及所要下载的升级数据在第二cdn网络512中的第二下载地址;并从第二cdn网络512中下载更新版本的升级数据,存储至终端内游戏应用客户端518中。

仍以上述示例对象平台管理应用为例,如图7所示为上述平台管理应用在终端所显示的应用界面,该应用界面中包括应用a、应用b、应用c,三个应用的版本更新预下载更新包(相当于上述实施例中的更新数据)界面。其中,在应用界面中所显示的为:应用a为已经预下载更新包完成后的状态,应用b为正在进行预下载更新包的状态,其下载进度为80%,应用c为存在待预下载更新包的状态,平台管理应用在获取到对应用c进行预下载的确认操作指令后,开始执行预下载。

此外,如图8所示,在终端通知栏中所显示的图标x用于指示上述平台管理应用,在平台管理应用的图标x中可以指示正在进行预下载应用b的更新包,如图8所示,当鼠标移至该图标x,或对图标x进行展示性操作(例如在触屏终端中选中图标x,对平台管理应用的图标x进行展示)时,显示平台管理应用当前下载的应用b的名称,以及应用b的下载进度,其下载进度为80%。

通过本申请提供的实施例,通过http接口向第二应用的服务器提供查询服务,从而使得第二应用的服务器可以及时获取所要下载的文件的文件列表,以便于第二应用的客户端可以及时从第二网络下载获取目标版本的升级数据,保证第一应用的客户端下载升级数据的下载效率。

作为一种可选的方案,在获取第一应用的版本更新信息之前,还包括:

s1,收集与目标版本匹配的版本信息,其中,版本信息中至少包括目标版本的版本标识及包含第一下载地址的协议文件;

s2,解析协议文件以获取第一下载地址;

s3,根据版本标识及第一下载地址生成版本更新信息。

具体结合图9所示进行说明,与第一cdn网络508连接的对外预下载管理系统504可以但不限于通过以下至少一种方式收集不同时期发布的更新版本的版本信息:手动录入、升级服务器同步。也就是说,可以通过手动录入方式向对外预下载管理系统504录入第一应用更新至更新版本的版本信息,也可以由升级服务器对外预下载管理系统504自动同步第一应用更新至更新版本的版本信息。

然后,对外预下载管理系统504可以解析上述版本信息中包含升级数据的第一下载地址的统一资源定位符(uniformresourcelocator,简称url)信息的协议文件,以获取该第一下载地址。然后将版本信息中更新版本的版本标识和上述第一下载地址结合,生成版本更新信息。以便于外预下载管理系统504根据上述第一下载地址下载获取更新版本的升级数据。

通过本申请提供的实施例,通过收集版本信息,将避免采集不同数据的差异性,此外,将版本信息标准化存储,还将达到将升级数据的下载范围扩展到不同网络的效果。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

在本发明实施例的另一方面,还提供了一种用于实施上述数据下载方法的数据下载装置,如图10所示,该装置包括:

1)第一获取单元1002,用于获取第一应用的版本更新信息,其中,版本更新信息中至少包括所要下载的第一应用的目标版本的升级数据在第一网络中的第一下载地址;

2)第二获取单元1004,用于根据第一下载地址从第一网络中获取目标版本的升级数据;

3)推送单元1006,用于通过第二应用的服务器将目标版本的升级数据推送至第二网络;

4)第一处理单元1008,用于向第二应用的服务器发送与版本更新信息匹配的文件列表,以使第二应用的客户端根据获取到的文件列表,将目标版本的升级数据从第二网络下载至第一应用的客户端中。

可选地,在本实施例中,上述数据下载装置可以但不限于应用于不同终端应用的版本更新过程中,例如下载用于更新终端应用的升级数据(也可称作升级包)。其中,上述终端应用可以包括但不限于:游戏应用、视频播放应用、音乐播放应用、购物应用等等。上述仅是一种示例,本实施例中不限于上述应用场景。

例如,以pc端游戏应用(也可称作端游)为例进行说明,端游往往会定期发布新版本(如目标版本)的更新升级包(如升级数据),为了节省时间,通常在新版本发布之前,会将上述更新升级包预下载至端游所在终端,以便于新版本发布后,端游所在终端可以直接安装,而无需在使用游戏时再执行下载。进一步,在本实施例中,上述预下载过程可以不再依赖于开发端游的内部cdn网络(相当于第一网络),而是在通过内部网络的下载系统获取到更新升级包后,将该更新数据包推送至外部cdn网络(相当于第二网络),从而实现利用第三方应用的客户端从外部网络下载上述更新升级包至端游的客户端中。上述仅是一种示例,本实施例中对此不做任何限定。

在实际的应用场景中,第一应用的版本更新信息的第一下载地址可以但不限于指示第一应用开发者的开发环境网络或者说第一应用发布者构建的专用网络(如第一网络)中的链接地址。相应地,第二下载地址可以但不限于指示区别于第一应用所在专用网络的的外部网络(如第二网络),中,用于获取上述与所更新的版本对应的升级数据的链接地址。上述仅是一种示例,本实施例中对此不做任何限定。

需要说明的是,在本实施例中,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。此外,通过第二网络下载第一应用的目标版本的升级数据,还将减少第一网络的数据处理量,降低处理承载,进而实现节省第一网络的处理带宽的效果。

可选地,在本实施例中,上述数据下载装置可以但不限于应用于第一网络中的下载系统(也可称作对外预下载管理系统)中。其中,该下载系统可以包括但不限于具有以下功能:

1)对第一网络内部:

(1)对第一网络内的数据进行整合。如收集第一应用在不同时期发布的目标版本的版本信息,其中,该版本信息中至少包括:目标版本的版本标识及包含第一下载地址的协议文件;

(2)解析上述协议文件,以获取上述第一下载地址;

(3)生成目标版本的版本更新信息;

2)对第一网络外部:

(1)通过第二应用的服务器推送目标版本的升级数据至外部的第二网络;

(2)通过http接口获取查询请求,以发送与版本更新信息匹配的文件列表;

(3)向第二应用的服务器发送第一应用更新至目标版本的版本更新通知。

可选地,在本实施例中,上述第一网络可以但不限于为与第一应用匹配的内部cdn网络。上述第二网络可以但不限于为与第二应用匹配的外部cdn网络。也就是说,将第一应用的客户端在的版本更新过程转移至第二网络,从而达到减少不同账号访问第一网络的访问量,以保证第一网络的网络下载安全,此外,还可以减少第一网络的承载,达到分流的效果。

可选地,在本实施例中,在将上述目标版本的升级数据通过第二应用的服务器推送至第二网络之前,还可以但不限于:建立第一网络中的下载系统与第二网络中的第二应用的服务器之间的通信链路。

需要说明的是,上述第二应用的服务器可以包括但不限于以下至少之一:第二应用的后台服务器、第二应用的文件传输协议(filetransferprotocal,简称ftp)服务器。也就是说,上述下载系统可以但不限于与第二应用的不同服务器进行数据传输交互。

作为一种可选的实施方式,下载系统获取第二应用的服务器发送的操作请求,响应该操作请求为第二应用的服务器分配通信账号,并向第二应用的服务器发送通信协议,以使第二应用的服务器可以使用上述通信账号通过上述通信协议与上述下载系统进行通信。其中,上述下载系统可以但不限于通过第二应用的ftp服务器推送上述目标版本的升级数据;可以但不限于通过http接口与第二应用的后台服务器进行数据交互。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,上述下载系统可以但不限于通过收集到的版本信息,以使整合后的版本信息更利于不同的第二网络识别,从而实现将下载范围扩展到不同网络的效果。

需要说明的是,在本实施例中,位于不同的系统中的应用所需要的更新数据的格式不同,如在windows操作系统中,更新数据包可以为.exe、.rar等格式,而在安卓系统中可以为.apk格式,而相对ios系统以及其他例如linux等系统,更新数据包的格式也不同。因而,在本实施例中,可以但不限于按照预定格式统一整合收集到的版本信息。其中,保证按照统一的格式标准整合收集即可,而对上述预定格式的具体内容在此不做任何限定。而上述版本信息的收集方式可以包括但不限于以下至少之一:手动录入、升级服务器同步录入。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,第二应用的客户端在从第二应用的服务器获知第一应用已更新至目标版本后,可以但不限于根据获取到的文件列表,从第二网络预下载上述目标版本的升级数据至第一应用的客户端中,而无需依赖第一网络通过第一应用的客户端获取升级数据,,从而实现保证第一网络的网络下载安全的同时,节省第一网络的网络带宽。

具体结合图5所示进行说明,图5示出了上述第一应用的目标版本的升级数据从第二网络进行预下载的过程。假设第一网络以第一cdn网络(内部)508为例,第二网络以第二cdn网络(外部)512为例,第一应用以游戏应用为例,第二应用以平台管理应用为例,与第一网络连接的下载系统(位于预下载版本信息服务器504中)以对外预下载管理系统504为例。预下载版本信息服务器504获取升级服务器502通过同步发送的游戏应用的更新版本(目标版本)的版本信息。如解析版本信息中的协议文件,获取更新版本的升级数据第一下载地址(url-1),以生成版本更新信息。然后,根据该第一下载地址到第一cdn网络中提前下载上述更新版本的升级数据。

进一步,将上述升级数据通过平台管理应用的ftp服务器510推送至第二cdn网络,并告知平台管理应用的后台服务器514,游戏应用已更新版本,并通知平台管理应用客户端516。平台管理应用客户端516可以从平台管理应用的后台服务器514中获取从对外预下载管理系统506中查询获取的文件列表,根据该文件列表,从第二cdn网络512中获取上述更新版本的升级数据提前下载至游戏应用客户端518中。

仍以上述示例对象平台管理应用为例,如图7所示为上述平台管理应用在终端所显示的应用界面,该应用界面中包括应用a、应用b、应用c,三个应用的版本更新预下载更新包(相当于上述实施例中的更新数据)界面。其中,在应用界面中所显示的为:应用a为已经预下载更新包完成后的状态,应用b为正在进行预下载更新包的状态,其下载进度为80%,应用c为存在待预下载更新包的状态,平台管理应用在获取到对应用c进行预下载的确认操作指令后,开始执行预下载。

此外,如图8所示,在终端通知栏中所显示的图标x用于指示上述平台管理应用,在平台管理应用的图标x中可以指示正在进行预下载应用b的更新包,如图8所示,当鼠标移至该图标x,或对图标x进行展示性操作(例如在触屏终端中选中图标x,对平台管理应用的图标x进行展示)时,显示平台管理应用当前下载的应用b的名称,以及应用b的下载进度,其下载进度为80%。

通过本申请提供的实施例,在根据获取到的第一应用的版本更新信息中的第一下载地址从第一网络中获取所要下载的第一应用的目标版本的升级数据之后,将上述目标版本的升级数据通过第二应用的服务器推送至第二网络,向第二应用的服务器发送与上述版本更新信息匹配的文件列表,以使第二应用的客户端根据上述文件列表,从第二网络将第一应用的目标版本的升级数据下载至第一应用的客户端中。也就是说,通过将需要下载的第一应用的目标版本的升级数据推送至第二网络,使终端通过第二应用从第二网络下载获取第一应用的目标版本的升级数据,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护,提高数据下载的安全性。

作为一种可选的方案,还包括:

1)第三获取单元,用于在通过第二应用的服务器将目标版本的升级数据推送至第二网络之前,获取第二应用的服务器发送的操作请求;

2)第二处理单元,用于响应操作请求为第二应用的服务器分配通信账号,并向第二应用的服务器发送通信协议,以使第二应用的服务器使用通信账号通过通信协议与第一网络中的下载系统进行通信,其中,下载系统用于从第一网络中下载目标版本的升级数据。

需要说明的是,在本实施例中,第二应用在获取目标版本的升级数据之前,可以但不限于向第一应用发送操作请求,以获取第一应用提供的通信账号和通信协议,以便于实现预下载功能。可选地,在本实施例中,上述通信协议中可以但不限于包括特定协议字段。

也就是说,在本实施例中,在将目标版本的升级数据推送至第二网络之前,还可以包括但不限于:第二应用的服务器请求与第一网络中的下载系统建立通信链路。换言之,第二应用的服务器需要事先获取下载系统的授权认证,在认证通过后,请求获取为该第二应用的服务器分配的通信账号及用于通信的通信协议。从而保证第一网络的网络下载安全,以避免任意账号访问上述第一网络,所造成的安全隐患问题。

通过本申请提供的实施例,通过为授权认证后的第二应用的服务器分配对应的通信账号,通知其用于通信的通信协议,从而实现保证第一网络的通信安全性,进而保证第一网络的网络下载安全,避免信息泄露导致的安全隐患等问题。

作为一种可选的方案,推送单元1006包括:

1)推送模块,用于通过第二应用的文件传输协议服务器,将目标版本的升级数据推送至第二网络中的内容分发网络服务器中。

具体结合图6所示进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,将该更新版本的升级数据推送给平台管理应用的ftp服务器510,以使平台管理应用的ftp服务器510将上述升级数据分发给第二cdn网络。

通过本申请提供的实施例,通过将第一应用的目标版本的升级数据通过第二应用的ftp服务器推送给第二网络中的内容分发网络服务器中,从而实现将第一应用的版本更新过程转移至第二网络,以达到减轻第一网络承载、节省第一网络带宽的目的,同时随着第一网络访问量的减少,从而使得第一应用的版本更新不再依赖于第一网络,以保证对第一网络的安全保护。

作为一种可选的方案,还包括:

1)第一发送单元,用于在通过第二应用的服务器将目标版本的升级数据推送至第二网络时,或,在通过第二应用的服务器将目标版本的升级数据推送至第二网络之前,向第二应用的后台服务器发送版本更新通知,其中,版本更新通知用于通知第二应用的后台服务器第一应用已更新至目标版本。

具体结合图6所示进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,对外预下载管理系统504可以向平台管理应用的后台服务器514发送版本更新通知,以告知平台管理应用,上述游戏应用已更新版本。

通过本申请提供的实施例,通过向第二应用的后台服务器发送版本更新通知,以实现及时通知第二应用版本更新,保证第二应用的客户端可以及时从第二网络下载获取第一应用的目标版本的升级数据,从而实现提高数据下载效率,避免不必要的时间浪费。

作为一种可选的方案,第一处理单元1008包括:

1)第一发送模块,用于通过http接口获取第二应用的后台服务器发送的查询请求;

2)第二发送模块,用于响应查询请求向第二应用的后台服务器发送文件列表。

具体结合图6进行说明,仍以上述示例对象为例。对外预下载管理系统504可以从第一cdn网络508获取到更新版本的升级数据后,对外预下载管理系统504可以向平台管理应用的后台服务器514发送版本更新通知,以告知平台管理应用,上述游戏应用已更新版本。

通过本申请提供的实施例,通过向第二应用的后台服务器发送版本更新通知,以实现及时通知第二应用版本更新,保证第二应用的客户端可以及时从第二网络下载获取第一应用的目标版本的升级数据,从而实现提高数据下载效率,避免不必要的时间浪费。

作为一种可选的方案,还包括:

1)收集单元,用于在获取第一应用的版本更新信息之前,收集与目标版本匹配的版本信息,其中,版本信息中至少包括目标版本的版本标识及包含第一下载地址的协议文件;

2)解析单元,用于解析协议文件以获取第一下载地址;

3)生成单元,用于根据版本标识及第一下载地址生成版本更新信息。

具体结合图9进行说明,与第一cdn网络508连接的对外预下载管理系统504可以但不限于通过以下至少一种方式收集不同时期发布的更新版本的版本信息:手动录入、升级服务器同步。也就是说,可以通过手动录入方式向对外预下载管理系统504录入第一应用更新至更新版本的版本信息,也可以由升级服务器对外预下载管理系统504自动同步第一应用更新至更新版本的版本信息。

然后,对外预下载管理系统504可以解析上述版本信息中包含升级数据的第一下载地址的统一资源定位符(uniformresourcelocator,简称url)信息的协议文件,以获取该第一下载地址。然后将版本信息中更新版本的版本标识和上述第一下载地址结合,生成版本更新信息。以便于外预下载管理系统504根据上述第一下载地址下载获取更新版本的升级数据。

通过本申请提供的实施例,通过收集版本信息,将避免采集不同数据的差异性,此外,将版本信息标准化存储,还将达到将升级数据的下载范围扩展到不同网络的效果。

在本发明实施例的又一方面,还提供了一种用于实施上述数据下载方法的电子装置,如图11所示,该电子装置包括:该电子装置可以包括:一个或多个(图中仅示出一个)处理器1102、存储器1104、以及传输装置1106。图11其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。

其中,存储器1104可用于存储软件程序以及模块,如本发明实施例中的安全漏洞检测方法和装置对应的程序指令/模块,处理器1102通过运行存储在存储器1104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的系统漏洞攻击的检测方法。存储器1104可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1104可进一步包括相对于处理器1102远程设置的存储器,这些远程存储器可以通过网络连接至终端a。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

上述的传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1106包括一个网络适配器(networkinterfacecontroller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1106为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

其中,具体地,存储器1104用于存储预设动作条件和预设权限用户的信息、以及应用程序。

处理器1102可以通过传输装置调用存储器1104存储的信息及应用程序,以执行下述步骤:

s1获取第一应用的版本更新信息,其中,版本更新信息中至少包括所要下载的第一应用的目标版本的升级数据在第一网络中的第一下载地址;

s2根据第一下载地址从第一网络中获取目标版本的升级数据;

s3通过第二应用的服务器将目标版本的升级数据推送至第二网络;

s4向第二应用的服务器发送与版本更新信息匹配的文件列表,以使第二应用的客户端根据获取到的文件列表,将目标版本的升级数据从第二网络下载至第一应用的客户端中。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s1获取第一应用的版本更新信息,其中,版本更新信息中至少包括所要下载的第一应用的目标版本的升级数据在第一网络中的第一下载地址;

s2根据第一下载地址从第一网络中获取目标版本的升级数据;

s3通过第二应用的服务器将目标版本的升级数据推送至第二网络;

s4向第二应用的服务器发送与版本更新信息匹配的文件列表,以使第二应用的客户端根据获取到的文件列表,将目标版本的升级数据从第二网络下载至第一应用的客户端中。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1