文件下载方法及相关产品与流程

文档序号:16672860发布日期:2019-01-18 23:42阅读:153来源:国知局
文件下载方法及相关产品与流程
本申请涉及通信
技术领域
,主要涉及了一种文件下载方法及相关产品。
背景技术
:随着通信技术和电子设备技术的发展,电子设备(例如:手机、平板计算机等)上集成的功能越来越多,直接通过电子设备下载文件成为一件普遍的事情,如何提高文件下载的速率是本领域技术人员待解决的技术问题。技术实现要素:本申请实施例提供了一种文件下载方法及相关产品,可通过nan中多个目标邻近设备下载目标文件,提高下载速度和传输速度。第一方面,本申请实施例提供一种文件下载方法,应用于电子设备,所述电子设备与多个邻近设备建立邻近感知网络nan连接,所述方法包括:向所述多个邻近设备中每一设备发送针对目标文件的下载请求;若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态;基于所述文件信息和所述网络状态,对所述目标文件进行划分,确定所述多个目标邻近设备中每一设备对应的传输文件片段;接收所述多个目标邻近设备中每一设备发送的传输文件片段,得到多个传输文件片段;对所述多个传输文件片段进行数据整合,得到所述目标文件。第二方面,本申请实施例提供一种文件下载装置,应用于电子设备,所述电子设备与多个邻近设备建立邻近感知网络nan连接,所述装置包括:通信单元,用于向所述多个邻近设备中每一设备发送针对目标文件的下载请求;处理单元,用于若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态;基于所述文件信息和所述网络状态,对所述目标文件进行划分,确定所述多个目标邻近设备中每一设备对应的传输文件片段;所述通信单元,还用于接收所述多个目标邻近设备中每一设备发送的传输文件片段,得到多个传输文件片段;所述处理单元,还用于对所述多个传输文件片段进行数据整合,得到所述目标文件。第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,所述程序包括用于如第一方面中所描述的部分或全部步骤的指令。第四方面,本申请实施例提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。第五方面,本申请实施例提供了一种计算机程序产品,其中,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。实施本申请实施例,将具有如下有益效果:采用了上述的文件下载方法及相关产品之后,应用于电子设备,所述电子设备与多个邻近设备建立nan连接。当所述电子设备向所述多个邻近设备中每一设备发送针对目标文件的下载请求,若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态。然后,基于所述文件信息和所述网络状态对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段,接收各个目标邻近设备发送的传输文件片段得到多个传输文件片段,对所述多个传输文件片段进行数据整合得到所述目标文件。也就是说,在多个目标邻近设备均缓存了电子设备待下载的目标文件,可基于该目标文件的文件信息和nan的网络状态为多个目标邻近设备分别分配对应的传输文件片段,从而对接收到的多个传输文件片段进行数据整合,则该电子设备可获取完整的目标文件,从而提高了下载速度和传输速度。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:图1a为本申请实施例提供的一种nan的网络架构图;图1b为本申请实施例提供的一种启动网络功能的场景示意图;图1c为本申请实施例提供的一种文件下载方法的流程示意图;图2为本申请实施例提供的一种文件下载装置的结构示意图;图3为本申请实施例提供的一种电子设备的结构示意图。具体实施方式为了使本
技术领域
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。邻近感知网络(neighborhoodawarenetworking,nan),又称无线保真邻近感知网络(wirelessfidelityalliance,wi-fialliance),在本申请实施例中采用nan进行描述。该nan功能主要用于实现实时高效发现机制,从而扩展wi-fi功能,改进此时此地的应用体验。建立连接之前在wi-fi范围内持续发现设备与服务,设备无需连接至移动宽带网或wi-fi基础设施网络,即可组件nan的一种快速感知组网方式。不仅可以采用这种新技术创建的社交应用,如帮助人们发现符合其要求的附近好友、信息或服务,而且可以在无连接的情况下交流小段信息,如将位置信息携带在发现帧discoverbeacon中,通过发现帧的交互进行信息交流等。另外,还对环境感知功能进行了改进。因为通过nan,终端无需依靠网络连接将用户的周围体验告知用户,只要wi-fiaware发现同样支持nan功能的终端,即可建立wi-fidirect或基础设施连接,进而提供多种体验。由此,nan功能可以帮助用户使用他们收到的信息完成更多任务,从发现信息到最终活动,使基于附近的体验得到补充。本申请实施例所涉及到的电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,ue),移动台(mobilestation,ms),终端设备(terminaldevice)等等。为方便描述,上面提到的设备统称为电子设备。为方便描述,上面提到的设备统称为电子设备,邻近设备也属于电子设备的一种,本申请将与该电子设备一同接入的nan的设备称为邻近设备。请参阅图1a,图1a为本申请实施例提供的一种nan的网络架构图,其中,该网络架构图包括电子设备、第一邻近设备、第二邻近设备、第三邻近设备。且上述该nan中的电子设备和邻近设备均支持nan功能,在运行本申请之前均开启nan功能。nan功能可以是类似打开wi-fi开关或者打开相应控制nan功能的按钮等相似动作进行触发,如图1b所示,邻近感知网络和有线网络为开启状态,而无线网络为关闭状态;也可在运行参数满足一定条件时自动开启,其中:运行参数可以是电子设备的当前位置,例如:停车场、商场、高速公路等,运行参数也可以是电子设备的前台应用,例如:包含定位服务的应用、涉及邻近网络的应用等等,在此不做限定。下面对本申请实施例进行详细介绍。本申请实施例提供了一种文件下载方法及相关产品,可通过nan中多个目标邻近设备下载目标文件,提高下载速度和传输速度。请参照图1c,本申请实施例提供一种文件下载方法的流程示意图。具体的,如图1c所示,一种文件下载方法,应用于如图1a所示的电子设备,即该电子设备与多个邻近设备建立nan连接,所述方法包括:s101:向多个邻近设备中每一设备发送针对目标文件的下载请求。在本申请实施例中,电子设备向各个邻近设备发送针对目标文件的下载请求,也就是说,电子设备请求各个邻近设备辅助下载目标文件。s102:若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和nan的网络状态。在本申请实施例中,多个目标邻近设备均缓存了目标文件,该目标文件可以是目标邻近设备中共享的文件,也可是电子设备中缓存的文件,还可以是该电子设备对应的云盘中缓存的文件,在此不做限定。文件信息包括文件内存大小、文件来源、文件类型等,网络状态包括各个邻近设备的网络信号强度、下载网速、剩余内存大小、与电子设备之间的距离等等,在此不做限定。可以理解,若多个目标邻近设备中均缓存了所述目标文件,则多个目标邻近设备中的任一邻近设备均可通过nan将目标文件传输给电子设备,从而省去了下载步骤,提高了下载效率。若多个目标邻近设备同时传输目标文件的文件片段,如此,可进一步提高传输效率。在一种实施例中,所述方法还包括:获取所述多个邻近设备中缓存所述目标文件对应的多个待传输邻近设备;对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备。在本申请实施例中,对于验证方法不做限定,可以获取待传输邻近设备与电子设备之间的关联值,在该关联值大于一个阈值时,确定该待传输邻近设备验证成功;也可判断该待传输邻近设备的标识信息是否黑名单,若是,则确定该待传输邻近设备验证失败;还可获取待传输邻近设备与电子设备之间的距离和网络状态,若距离小于一个阈值、网络状态信号强于一个阈值或处于稳定,则确定该待传输邻近设备验证成功等。可以理解,对多个邻近设备中缓存了目标文件的多个待传输邻近设备进行验证,可提高nan传输的安全性和稳定性。在一种实施例中,所述多个待传输邻近设备包括参考邻近设备,所述对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备包括:获取所述参考邻近设备与所述电子设备之间的连接记录;从所述连接记录中提取所述参考邻近设备与所述电子设备之间的连接参数;根据所述连接参数确定所述参考邻近设备与所述电子设备之间的关联值;在所述关联值大于第一阈值时,确定所述参考邻近设备为所述目标邻近设备。其中,连接记录为参考邻近设备与电子设备之间建立nan连接的记录信息;连接参数包括连接时长、连接次数、数据传输量等多个连接维度信息。可以理解,电子设备可从连接记录中提取出参考邻近设备与电子设备之间的连接参数,该连接参数在一定程度上反映了参考邻近设备与电子设备之间的关联性,如此,可提高关联值的准确性。然后,根据预先设置的第一阈值与该关联值之间进行大小比较,从而确定参考邻近设备是否为目标邻近设备,提高了识别的准确性,便于提高目标邻近设备进行传输的安全性和稳定性。对于根据连接参数确定关联值的方法不做限定,在一种实施例中,所述方法还包括:根据所述多个连接维度信息和所述多个连接维度信息中每一连接维度信息对应的预设连接权值确定所述关联值。其中,多个连接维度信息对应的预设连接权值之和为1,可依据连接维度信息与电子设备之间进行数据交互的概率进行确定,如此,通过加权计算可提高确定关联值的准确性。举例来说,假设多个连接维度和其对应的连接维度信息:连接时长为10min、连接次数为2次、数据传输量为10m,上述连接时长、连接次数、数据传输量对应的预设连接权值分别为0.3、0.4、0.3,则关联值等于10*0.3+2*0.4+10*0.3=6.8。若第一阈值为5,则关联值大于第一阈值,确定该参考邻近设备为目标邻近设备。在一种实施例中,所述方法还包括:获取所述参考邻近设备的参考评价值;根据所述参考评价值和所述关联值确定目标评价值;在所述目标评价值大于第二阈值时,确定所述参考邻近设备为所述目标邻近设备。其中,对于第二阈值和前述的第一阈值不做限定,可以是网络传输所需的最小值;也可以是所述多个评价值的平均值等;参考评价值用于描述参考邻近设备的下载状态,本申请对于获取参考评价值的方法不做限定。在一种实施例中,所述参考邻近设备的下载参数包括多个评价维度信息;所述根据所述多个下载参数确定所述参考邻近设备的参考评价值包括:根据所述多个评价维度信息和所述多个评价维度信息中每一评价维度信息对应的预设评价权值确定所述参考邻近设备的评价值。其中,多个评价维度可以是网络信号强度、下载网速、剩余内存大小、与电子设备之间的距离等,多个评价维度信息对应的预设评价权值之和为1,对于维度信息和其对应的预设评价权值不做限定,可依据维度信息与下载状态之间的关联度进行确定。举例来说,假设多个维度和其对应的维度信息:参考邻近设备与电子设备之间的距离为5m、参考邻近设备的下载速度为2m/s、参考邻近设备的剩余内存大小为20g,上述多个维度对应的预设评价权值依次分别为0.4、04、0.2,则可按照如下方式计算参考评价值等于5*0.4+2*0.4+20*0.2=6.8,若参考邻近设备与电子设备之间的关联值为0.7,则将两者进行加权计算等于6.8*0.5+0.7*0.5=3.75,若第二阈值为5,则参考评价值小于第二阈值,确定该参考邻近设备不是目标邻近设备。可以理解,先获取参考邻近设备和电子设备之间的关联值和该参考邻近设备的参考评价值,然后,根据关联值和参考评价值之间的大小关系选取目标邻近设备,如此,可提高目标邻近设备的安全性和稳定性,提高了传输效率。对于如何获取参考邻近设备与电子设备之间的距离的方法不做限定,若所述电子设备包括测距模块,其中,测距模块可以是测距传感器,例如:超声波测距传感器、激光测距传感器、红外线测距传感器和雷达传感器等,则可直接根据其测距原理确定第一邻近设备与电子设备之间的距离。在一种实施例中,电子设备基于nan的距离测量方式ranging检测得到参考邻近设备与电子设备之间的距离,也可由第一邻近设备基于nan的ranging检测得到距离,再向电子设备发送距离等,在此不做限定。s103:基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段。在本申请实施例中,对于如何确定各个目标邻近设备的传输文件片段不做限定,可以获取每一目标邻近设备的网络速率,根据其网络速度进行确定;也可以是获取每一目标邻近设备与电子设备之间的距离,根据其距离速度进行确定;还可以根据网络速率、距离、剩余内存大小等多个下载参数进行确定。可以理解,基于文件信息和网络状态对目标文件进行划分,并确定多个目标邻近设备中每一设备对应的传输文件片段,可提高划分的准确性和传输效率。在一种实施例中,所述基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段包括:基于所述网络状态确定目标内存大小;根据所述目标内存大小和所述文件信息,对所述目标文件进行划分,确定所述多个目标邻近设备中每一设备对应的传输文件片段。其中,目标内存大小用于限定各个目标邻近设备的文件内存大小,也就是说,每一目标邻近设备所传输的文件大小相等。可以理解,先根据网络状态确定目标内存大小,再根据目标内存大小和文件信息,对目标文件进行划分确定各个目标邻近设备对应的传输文件片段,即可获取同样大小的多个传输文件片段,且每一传输文件片段的文件类型相似,利于提高文件划分的准确性。本申请对于确定目标内存大小的方法不做限定,在一种实施例中,所述网络状态包括所述多个目标邻近设备中每一设备的下载参数,所述基于所述网络状态确定目标内存大小,包括:根据所述多个目标邻近设备中每一设备的下载参数获取所述多个目标邻近设备中每一设备的评价值得到多个评价值;获取所述多个评价值中的最小值;根据所述最小值和所述目标邻近设备的数量确定所述目标内存大小。获取目标邻近设备的评价值的方法可参照上述的获取参考邻近设备的评价值的方法,在此不再赘述。可以理解,获取各个目标邻近设备的评价值,再选取其中的最小值,根据该最小值和目标邻近设备的数量确定目标内存大小,可降低各个目标邻近设备之间的差异性,同步传输同等内存大小的文件片段,如此,提高传输的同步性。本申请对于预设距离不作限定,在一种实施例中,获取所述最小值对应的参考邻近设备的空闲网络速率;根据所述空闲网络速率确定预设内存大小;根据所述预设内存大小、所述数量和所述目标文件的文件内存大小确定所述目标内存大小。其中,空闲网络速率可以是目标邻近设备接入的热点为其分配的接入速率中未被占用的速率,从而传输目标文件不会影响目标邻近设备的使用。上述的热点可以是路由器,也可以是其他的电子设备;该热点所提供的无线网络包括但不限于wi-fi。在本申请实施例中,可预先存储空闲网络速率与预设内存大小之间的映射关系,如下表所示:当空闲网络速率为80kb/s时,该空闲网络速率满足[0~200],则预设内存大小为0.8m;当空闲网络速率为300kb/s时,该空闲网络速率满足(200~500],则预设内存大小为1m;当空闲网络速率为1mb/s时,该空闲网络速率大于500kb/s,则预设内存大小为5m。空闲网络速率(kb/s)范围预设内存大小为(m)[0~200]0.8(200~500]1大于5005可以理解,电子设备获取目标邻近设备的空闲网络速率,由该空闲网络速率确定预设内存大小,再基于预设内存大小、目标邻近设备的数量、目标文件的文件内存大小确定目标内存大小,可提高确定目标内存大小的准确性,便于提高传输的同步性和传输效率。s104:接收所述多个目标邻近设备中每一设备发送的传输文件片段得到多个传输文件片段。在本申请实施例中,各个目标邻近设备将其分配的传输文件片段进行传输,即发送给电子设备,如此,电子设备可获取多个传输文件片段。在一种实施例中,上述多个目标邻近设备可以是直接将其对应的传输文件片段传输给电子设备,也可通过中转目标邻近设备将该传输文件片段传输给电子设备,从而通过至少一次中转,将多个传输文件片段发送给电子设备,如此,提高了传输效率。在一种实施例中,所述方法还包括:根据所述多个评价值确定待中转目标邻近设备;获取所述多个邻近设备中除了所述多个目标邻近设备之外的各个设备的下载参数得到多个下载参数;获取所述多个下载参数中每一下载参数对应的评价值得到多个中转评价值;将所述多个中转评价值中的最大值对应的邻近设备确定中转目标邻近设备;接收所述中转目标邻近设备转发的所述待中转目标邻近设备对应的传输文件。其中,获取多个邻近设备中除了所述多个目标邻近设备之外的各个设备的下载参数的方法,获取评价值的方法可参照前述的方法,在此不再赘述。可以理解,为了提高传输效率,先确定多个目标邻近设备中的待中转目标邻近设备,再根据多个邻近设备中除了多个目标邻近设备之外的设备的下载参数确定各个设备的中转评价值,然后,将多个中转评价值中的最大值对应的邻近设备确定中转目标邻近设备。如此,通过中转目标邻近设备将待中转目标邻近设备对应的传输文件片段进行传输,可提高传输效率,且可避免由于距离过远而导致传输时间较长或失败的情况发生。s105:对所述多个传输文件片段进行数据整合得到所述目标文件。在本申请实施例中,对待下载文件进行划分,可对每一个待下载文件片段进行编号,从而在数据整合时,可根据其编号的顺序进行数据整合,对于如何对待下载文件片段进行编号不做限定。在一种实施例中,所述对所述多个传输文件片段进行数据整合得到所述目标文件包括:根据所述多个评价值确定所述多个传输文件片段对应的整合顺序;按照所述整合顺序对所述多个传输文件片段进行数据整合,得到所述目标文件。可以理解,由于各个目标邻近设备的评价值不同,而目标内存大小相同,则电子设备接收到各个传输文件片段的时间不同,因此,根据多个评价值确定整合顺序,从而在电子设备获取多个带有编号的传输文件片段时,可直接根据传输文件片段的编号和整合顺序进行数据整合得到目标文件,如此,提高了数据整合的效率。举例来说,假设存在第一目标邻近设备、第二目标邻近设备、第三目标邻近设备、第四目标邻近设备和第五目标邻近设备共5个目标邻近设备,其中:第一目标邻近设备的评价值大于第三目标邻近设备的评价值、第三目标邻近设备的评价值等于第四目标邻近设备的评价值、第三目标邻近设备的评价值大于第二目标邻近设备、第二目标邻近设备的评价值等于第五目标邻近设备的评价值,则确定整合顺序为第一目标邻近设备对应的传输文件片段、第三目标邻近设备对应的传输文件片段和第四目标邻近设备对应的传输文件片段先整合,再与第二目标邻近设备对应的传输文件片段和第五目标邻近设备对应的传输文件片段整合,从而提高文件传输效率。此外,可根据编号查找缺失的待下载片段,提高故障处理能力。在一种实施例中,所述方法还包括:根据所述多个评价值和所述目标内存大小确定所述目标邻近设备中每一设备对应的传输时长,所述多个目标邻近设备包括检测目标邻近设备;在所述检测目标邻近设备对应的传输时长到达时,若未接收到所述检测目标邻近设备对应的传输文件片段;获取所述检测目标邻近设备的传输状态;若所述传输状态为故障,从所述多个目标邻近设备中选取备选目标邻近设备,并确定所述备选目标邻近设备还对应所述检测目标邻近设备对应的传输文件片段;接收所述备选目标邻近设备发送的所述检测目标邻近设备对应的传输文件片段。可以理解,预先根据评价值和目标内存大小确定各个目标邻近设备的传输时长,并以多个目标邻近设备中的检测目标邻近设备为例进行说明,则在该检测目标邻近设备对应的传输时长到达时,检测是否收到该检测目标邻近设备对应的传输文件片段,若是,则执行数据整合的步骤,若否,则检测该检测目标邻近设备是否故障,若是,从多个目标邻近设备中选取备选目标邻近设备,如此,通过备选目标邻近设备传输该检测目标邻近设备的传输文件片段,且备选目标邻近设备缓存了检测目标邻近设备的传输文件片段,如此,可提高故障处理能力和文件传输效率。对于检测目标邻近设备是否故障的方法不作限定,可获取目标邻近设备发送的故障信息;也可再次获取目标邻近设备的下载参数,若下载参数不满足预设条件,则确定该目标邻近设备故障;还可获取目标邻近设备的下载进程,若该下载进程对应的预估下载时长大于一个阈值,则确定该目标邻近设备故障等。备选目标邻近设备可以是多个目标邻近设备中评价值最高的设备,也可以是距离电子设备最近的设备等,在此也不作限定。在如图1c所示的文件下载方法中,当所述电子设备向所述多个邻近设备中每一设备发送针对目标文件的下载请求,若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态。然后,基于所述文件信息和所述网络状态对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段,接收各个目标邻近设备发送的传输文件片段得到多个传输文件片段,对所述多个传输文件片段进行数据整合得到所述目标文件。也就是说,在多个目标邻近设备均缓存了电子设备待下载的目标文件,可基于该目标文件的文件信息和nan的网络状态为多个目标邻近设备分别分配对应的传输文件片段,从而对接收到的多个传输文件片段进行数据整合,则该电子设备可获取完整的目标文件,从而提高了下载速度和传输速度。与图1c所示的实施例一致,请参照图2,图2是本申请实施例提供的一种文件下载装置的结构示意图,该文件下载装置应用于电子设备,所述电子设备与多个邻近设备建立nan连接。如图2所示,上述文件下载装置200包括:通信单元201用于向所述多个邻近设备中每一设备发送针对目标文件的下载请求;处理单元202用于若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态;基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段;所述通信单元201还用于接收所述多个目标邻近设备中每一设备发送的传输文件片段得到多个传输文件片段;所述处理单元202还用于对所述多个传输文件片段进行数据整合得到所述目标文件。可以理解,通信单元201当所述电子设备向所述多个邻近设备中每一设备发送针对目标文件的下载请求,若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,处理单元202获取所述目标文件的文件信息和所述nan的网络状态。然后,基于所述文件信息和所述网络状态对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段,通信单元201接收各个目标邻近设备发送的传输文件片段得到多个传输文件片段,处理单元202对所述多个传输文件片段进行数据整合得到所述目标文件。也就是说,在多个目标邻近设备均缓存了电子设备待下载的目标文件,可基于该目标文件的文件信息和nan的网络状态为多个目标邻近设备分别分配对应的传输文件片段,从而对接收到的多个传输文件片段进行数据整合,则该电子设备可获取完整的目标文件,从而提高了下载速度和传输速度。在一个可能的示例中,在所述基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段方面,所述处理单元202具体用于基于所述网络状态确定目标内存大小;根据所述目标内存大小和所述文件信息,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段。在一个可能的示例中,所述网络状态包括所述多个目标邻近设备中每一设备的下载参数,在所述基于所述网络状态确定目标内存大小方面,所述处理单元具体202用于根据所述多个目标邻近设备中每一设备的下载参数获取所述多个目标邻近设备中每一设备的评价值得到多个评价值;获取所述多个评价值中的最小值;根据所述最小值和所述目标邻近设备的数量确定所述目标内存大小。在一个可能的示例中,在所述对所述多个传输文件片段进行数据整合,得到所述目标文件方面,所述处理单元202具体用于根据所述多个评价值确定所述多个传输文件片段对应的整合顺序;按照所述整合顺序对所述多个传输文件片段进行数据整合得到所述目标文件。在一个可能的示例中,所述处理单元202还用于根据所述多个评价值和所述目标内存大小确定所述目标邻近设备中每一设备对应的传输时长,所述多个目标邻近设备包括检测目标邻近设备;在所述检测目标邻近设备对应的传输时长到达时,若未接收到所述检测目标邻近设备对应的传输文件片段;获取所述检测目标邻近设备的传输状态;若所述传输状态为故障,从所述多个目标邻近设备中选取备选目标邻近设备,并确定所述备选目标邻近设备还对应所述检测目标邻近设备对应的传输文件片段;所述通信单元201还用于接收所述备选目标邻近设备发送的所述检测目标邻近设备对应的传输文件片段。在一个可能的示例中,所述处理单元202还用于获取所述多个邻近设备中缓存所述目标文件对应的多个待传输邻近设备;对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备。在一个可能的示例中,所述多个待传输邻近设备包括参考邻近设备,在所述对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备方面,所述处理单元202还用于获取所述参考邻近设备与所述电子设备之间的连接记录;从所述连接记录中提取所述参考邻近设备与所述电子设备之间的连接参数;根据所述连接参数确定所述参考邻近设备与所述电子设备之间的关联值;在所述关联值大于第一阈值时,确定所述参考邻近设备为所述目标邻近设备。与图1c所示的实施例一致,请参照图3,图3是本申请实施例提供的一种电子设备的结构示意图。如图3所示,该电子设备300包括处理器310、存储器320、通信接口330以及一个或多个程序340,其中,上述一个或多个程序340被存储在上述存储器320中,并且被配置由上述处理器310执行。所述电子设备与多个邻近设备建立nan连接,上述程序340包括用于执行以下步骤的指令:向所述多个邻近设备中每一设备发送针对目标文件的下载请求;若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态;基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段;接收所述多个目标邻近设备中每一设备发送的传输文件片段得到多个传输文件片段;对所述多个传输文件片段进行数据整合得到所述目标文件。可以理解,当所述电子设备300向所述多个邻近设备中每一设备发送针对目标文件的下载请求,若所述多个邻近设备中的多个目标邻近设备均缓存了所述目标文件,获取所述目标文件的文件信息和所述nan的网络状态。然后,基于所述文件信息和所述网络状态对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段,接收各个目标邻近设备发送的传输文件片段得到多个传输文件片段,对所述多个传输文件片段进行数据整合得到所述目标文件。也就是说,在多个目标邻近设备均缓存了电子设备300待下载的目标文件,可基于该目标文件的文件信息和nan的网络状态为多个目标邻近设备分别分配对应的传输文件片段,从而对接收到的多个传输文件片段进行数据整合,则该电子设备300可获取完整的目标文件,从而提高了下载速度和传输速度。在一个可能的示例中,在所述基于所述文件信息和所述网络状态,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段方面,所述程序340中的指令具体用于执行以下操作:基于所述网络状态确定目标内存大小;根据所述目标内存大小和所述文件信息,对所述目标文件进行划分确定所述多个目标邻近设备中每一设备对应的传输文件片段。在一个可能的示例中,所述网络状态包括所述多个目标邻近设备中每一设备的下载参数,在所述基于所述网络状态确定目标内存大小方面,所述程序340中的指令具体用于执行以下操作:根据所述多个目标邻近设备中每一设备的下载参数获取所述多个目标邻近设备中每一设备的评价值得到多个评价值;获取所述多个评价值中的最小值;根据所述最小值和所述目标邻近设备的数量确定所述目标内存大小。在一个可能的示例中,在所述对所述多个传输文件片段进行数据整合得到所述目标文件方面,所述程序340中的指令具体用于执行以下操作:根据所述多个评价值确定所述多个传输文件片段对应的整合顺序;按照所述整合顺序对所述多个传输文件片段进行数据整合得到所述目标文件。在一个可能的示例中,所述程序340中的指令还用于执行以下操作:根据所述多个评价值和所述目标内存大小确定所述目标邻近设备中每一设备对应的传输时长,所述多个目标邻近设备包括检测目标邻近设备;在所述检测目标邻近设备对应的传输时长到达时,若未接收到所述检测目标邻近设备对应的传输文件片段;获取所述检测目标邻近设备的传输状态;若所述传输状态为故障,从所述多个目标邻近设备中选取备选目标邻近设备,并确定所述备选目标邻近设备还对应所述检测目标邻近设备对应的传输文件片段;接收所述备选目标邻近设备发送的所述检测目标邻近设备对应的传输文件片段。在一个可能的示例中,所述程序340中的指令还用于执行以下操作:获取所述多个邻近设备中缓存所述目标文件对应的多个待传输邻近设备;对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备。在一个可能的示例中,所述多个待传输邻近设备包括参考邻近设备,在所述对所述多个待传输邻近设备进行验证得到验证成功的所述多个目标邻近设备方面,所述程序340中的指令具体用于执行以下操作:获取所述参考邻近设备与所述电子设备300之间的连接记录;从所述连接记录中提取所述参考邻近设备与所述电子设备300之间的连接参数;根据所述连接参数确定所述参考邻近设备与所述电子设备300之间的关联值;在所述关联值大于第一阈值时,确定所述参考邻近设备为所述目标邻近设备。本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于存储计算机程序,该计算机程序使得计算机执行如方法实施例中记载的任一方法的部分或全部步骤,计算机包括电子设备。本申请实施例还提供一种计算机程序产品,计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,计算机程序可操作来使计算机执行如方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,计算机包括电子设备。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模式并不一定是本申请所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模式的形式实现。集成的单元如果以软件程序模式的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、rom、ram、磁盘或光盘等。以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1