一种数据传输方法、装置、终端及计算机可读存储介质转让专利

申请号 : CN201710589653.1

文献号 : CN107277756B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 何辉

申请人 : OPPO广东移动通信有限公司

摘要 :

本发明实施例公开了一种数据传输方法、装置、终端及计算机可读存储介质,该方法包括:在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端。采用本发明,可以根据终端的性能状态终端以选择终端协作数据传输,提高了数据传输效率,方便了数据的传输。

权利要求 :

1.一种数据传输方法,应用于第一终端,其特征在于,所述方法包括:在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;

若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;

若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端;所述通知消息用于通知所述第二终端作为发送端,并与所述目标终端之间通过建立的直连通信连接传输所述已传输数据。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

确定所述已传输数据的数据量;

在所述已传输数据的数据量大于或等于预置的数据量阈值时,则发送第一连接请求,所述第一连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;

在所述已传输数据的数据量小于预置的数据量阈值时,则发送第二连接请求,所述第二连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

确定所述直连通信集群中需要接收所述待传输数据的初始终端;

向各初始终端发送探测信号;所述探测信号用于探测所述各初始终端与所述第一终端间的信号强度;

确定出所述各初始终端中与所述第一终端间的信号强度小于预置信号强度阈值的初始终端为目标终端。

4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法还包括:在所述第一终端的性能信息包括剩余电量时,判断所述剩余电量是否小于预置的第一电量阈值;

在所述第一终端的性能信息包括传输速度时,判断所述传输速度是否小于预置的第一速度阈值;

若所述剩余电量小于所述预置的第一电量阈值和/或所述传输速度小于所述预置的第一速度阈值,则确定所述第一终端的性能信息小于对应预置的阈值。

5.根据权利要求4所述的方法,其特征在于,所述根据所述直连通信集群中各个终端的性能信息确定出第二终端,包括:判断所述直连通信集群中各个终端的性能信息中的剩余电量是否大于或者等于预置的第二电量阈值;

在确定所述各个终端中包括剩余电量大于或者等于所述预置的第二电量阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;

选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。

6.根据权利要求4所述的方法,其特征在于,所述根据所述直连通信集群中各个终端的性能信息确定出第二终端,包括:判断所述直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;

在确定所述各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;

选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。

7.一种数据传输方法,应用于第二终端,其特征在于,所述方法包括:在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端;

若接收到所述第一终端在确定对所述第二终端的已传输数据在待传输数据中的比例超过预置的比例阈值时发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端;其中,所述第一终端用于在确定所述第一终端的性能信息小于对应预置的阈值的情况下,根据所述直连通信集群中各个终端的性能信息确定出第二终端。

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

接收第一连接请求,所述第一连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;

或者,接收第二连接请求,所述第二连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。

9.一种数据传输装置,应用于第一终端,其特征在于,所述装置包括:获取模块,用于在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;

确定模块,用于若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;

发送模块,用于若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端;

所述通知消息用于通知所述第二终端作为发送端,并与所述目标终端之间通过建立的直连通信连接传输所述已传输数据。

10.如权利要求9所述的装置,其特征在于,

所述确定模块,还用于确定所述已传输数据的数据量;

所述发送模块,还用于在所述已传输数据的数据量大于或等于预置的数据量阈值时,则发送第一连接请求,所述第一连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;在所述已传输数据的数据量小于预置的数据量阈值时,则发送第二连接请求,所述第二连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。

11.一种数据传输装置,应用于第二终端,其特征在于,所述装置包括:发送模块,用于在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端;

所述发送模块,还用于若接收到所述第一终端在确定对所述第二终端的已传输数据在待传输数据中的比例超过预置的比例阈值时发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端;其中,所述第一终端用于在确定所述第一终端的性能信息小于对应预置的阈值的情况下,根据所述直连通信集群中各个终端的性能信息确定出第二终端。

12.一种终端,其特征在于,至少包括处理器和存储器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码,执行如权利要求1-6任一项所述的方法。

13.一种终端,其特征在于,至少包括处理器和存储器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码,执行如权利要求7或8所述的方法。

14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的方法,或者如权7或8所述的方法。

说明书 :

一种数据传输方法、装置、终端及计算机可读存储介质

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种数据传输方法、装置、终端及计算机可读存储介质。

背景技术

[0002] 随着通信技术的发展,终端的应用也越来越普遍。人们可以利用各个各样的通信方式进行数据的交互。例如,各个终端间可以建立的无线通信连接,如无线保真(Wireless-Fidelity,Wi-Fi)连接、近场通信(Near Field Communication,NFC)连接,来发送和/或接收数据。
[0003] 通常来说,终端会获取用户想要传输至其它终端的数据,并在接收到数据发送指令时,可以将该数据发送至其它终端。其它终端可以通过建立的无线通信连接接收到该数据。然而,在该终端由于信号较差、电量不足等原因,极易导致该第一终端的数据传输过程不能持续,使得其它终端不能完整的接收到该终端想要传输的数据。

发明内容

[0004] 本发明实施例提供了一种数据传输方法、装置、终端及计算机可读存储介质,可以根据终端的性能状态选取合适的终端以进行数据传输,提高了数据传输的连续性,并且可以通过多终端的协作数据传输,提高了数据传输效率,方便了数据的传输。
[0005] 第一方面,本发明实施例提供了一种数据传输方法,包括:
[0006] 在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;
[0007] 若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;
[0008] 若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端;所述通知消息用于通知所述第二终端作为发送端,并与所述目标终端之间通过建立的直连通信连接传输所述已传输数据。
[0009] 第二方面,本发明实施例还提供了一种数据传输方法,该方法包括:
[0010] 在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端;
[0011] 若接收到所述第一终端发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端。
[0012] 第三方面,本发明实施例提供了一种数据传输装置,包括:
[0013] 获取模块,用于在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;
[0014] 确定模块,用于若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;
[0015] 发送模块,用于若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端;所述通知消息用于通知所述第二终端作为发送端,并与所述目标终端之间通过建立的直连通信连接传输所述已传输数据。
[0016] 第四方面,本发明实施例还提供了一种数据传输装置,该装置包括:
[0017] 发送模块,用于在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端;
[0018] 所述发送模块,还用于若接收到所述第一终端发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端。
[0019] 第五方面,本发明实施例提供了一种终端,至少包括处理器和存储器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码,执行如第一方面所述的方法。
[0020] 第六方面,本发明实施例还提供了一种终端,至少包括处理器和存储器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码,执行如第二方面所述的方法。
[0021] 第七方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面的方法,或者第二方面的方法。
[0022] 第八方面,本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括了存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器使所述处理器执行上述第一方面的方法,或者第二方面的方法。
[0023] 第一终端可以在确定该第一终端的性能信息小于对应预置的阈值时,确定出第二终端,并可以在确定对该第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值时,发送通知消息至第二终端,以使该第二终端可以作为发送端将该已传输数据发送至该直连通信集群中的目标终端,使得终端可以根据自身性能状态来选取合适的终端,以继续数据的传输,保障了数据传输的连续性和完整性,并且可以通过多终端的协作数据传输来提高数据传输的效率。

附图说明

[0024] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0025] 图1为本发明实施例提供的一种网路架构图;
[0026] 图2为本发明再一实施例提供的一种网路架构图;
[0027] 图3为本发明实施例提供的一种数据传输方法的流程示意图;
[0028] 图4为本发明实施例提供的一种数据传输网络示意图;
[0029] 图5为本发明再一实施例提供的一种数据传输方法的流程示意图;
[0030] 图6为本发明再一实施例提供的一种数据传输网络示意图;
[0031] 图7为本发明实施例提供的一种数据传输装置的结构示意图;
[0032] 图8为本发明再一实施例提供的一种数据传输装置的结构示意图;
[0033] 图9为本发明实施例提供的一种终端的结构示意图;
[0034] 图10为本发明再一实施例提供的一种终端的结构示意图。

具体实施方式

[0035] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036] 本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
[0037] 在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0038] 应理解,本申请所描述的第一终端、第二终端或第三终端可以包括,但不限于:手机(如Android手机、iOS手机等)、平板电脑等具有网络连接和数据传输功能的移动终端。该移动终端还可称为用户设备(User Equipment,简称UE)、终端(Terminal)、无线终端或移动台(Mobile Station,简称MS)等等,本发明实施例不做限定。
[0039] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0040] 请参阅图1,为本发明实施例提供的一种网络架构图。该网络架构可以应用于一般的直连通信场景中,如图1所示,该网络架构中可以包括第一终端10、第二终端20。
[0041] 其中,第一终端10可以与第二终端20间建立直连通信连接。该直连通信连接是指该第一终端10和第二终端20之间直接通信而不借助于第三方设备,如图1所示。第一终端10与第二终端20间建立直连通信连接的方式可以包括:第一终端10与第二终端20间基于第二传输方式建立第二直连通信连接,并可以在该第二直连通信连接上交互第一传输方式的连接信息。该第一终端10与该第二终端20间可以基于该连接信息建立基于第一传输方式的第一直连通信连接。其中,第二直连通信连接在进行数据交互时的能耗值小于第一直连通信连接在进行数据交互时的能耗值,或者第二直连通信连接在进行数据交互时的能耗值小于第一终端10与第二终端20间交互该第一传输方式的连接信息时的能耗值。
[0042] 其中,第二传输方式建立的第二直连通信连接包括但不限于蓝牙连接、射频连接,如近场通信(Near Field communication,NFC)连接、超声波连接、电磁波连接,如红外线连接。第一传输方式建立的第一直连通信连接包括但不限于无线保真(Wireless Fidelity,Wi-Fi)通信连接。
[0043] 在一个实施例中,在建立第一直连通信连接时,可以先建立第二直连通信连接,例如,可以先在该第一终端10与第二终端20间通过蓝牙建立蓝牙连接,可以在该蓝牙连接上交互Wi-Fi的连接信息,如Wi-Fi热点的用户名和密码。该第一终端10与该第二终端20间可以基于该连接信息建立基于Wi-Fi热点的第一直连通信连接。第一终端10可以在建立第二直连通信连接后,主动开启第一终端20的Wi-Fi热点功能,以便于建立与第二终端20之间的第一直连通信连接,也可以通过第二直连通信连接触发第二终端20开启Wi-Fi热点功能,以便于第一终端101接入到第二终端102完成第一直连通信连接的建立。
[0044] 在一个实施例中,第一终端10的用户在需要向第二终端102传输数据时,可以在该第一终端10上配置管理第一终端10上的传输模式(该传输模式,对应于至少一种数据传输方式)的直连通信按钮,在点击该按钮开启了第一终端10的直连通信模式之后,该第一终端10便可以自动开启蓝牙对应的第二传输功能以及Wi-Fi对应的第一传输功能。同样,该第二终端20的用户也可以开启第二终端20的直连通信按钮,并自动开启蓝牙对应的第二传输功能以及Wi-Fi对应的第一传输功能。然后,第一终端10的用户可以在第一终端10通过蓝牙扫描到的至少一个终端中确定出第二终端20,该第一终端10与第二终端20建立该蓝牙连接。
[0045] 在一个实施例中,在需要建立第一直连通信连接时,该第一终端10也可以首先检测自身的电量值,如果该电量值大于电量预设百分比(例如90%),那么该第一终端10也可以直接建立基于Wi-Fi热点的第一直连通信连接。如果该电量值小于或者等于该电量预设百分比(例如20%),那么该第一终端10可以首先建立该基于蓝牙的第二直连通信连接,再在蓝牙连接的基础上建立Wi-Fi连接,以完成第一直连通信连接的建立。
[0046] 可见,本发明实施例可以通过蓝牙连接(即第二直连通信连接)交互用于建立Wi-Fi连接(即第一直连通信连接)的连接信息,连接信息例如可以是作为Wi-Fi热点的终端的用户名和接入密码,再根据该连接信息建立Wi-Fi连接(即第一直连通信连接),在一定程度上节约了终端能耗,并且该Wi-Fi连接(即第一直连通信连接)可以保证较快的传输速度,同时也提高了终端在传输数据时的传输效率。
[0047] 在一个实施例中,在需要建立第一直连通信连接时,还可以先在第一终端10中开启Wi-Fi热点,并通过二维码的方式携带该Wi-Fi热点的用户名和密码,第二终端20可以扫描该二维码,进而直接得到第一终端10的Wi-Fi热点的用户名和密码,接入到第一终端10建立两者之间的第一直连通信连接。或者第二终端20开启Wi-Fi热点,并通过二维码的方式携带该Wi-Fi热点的用户名和密码,第一终端10可以扫描该二维码,进而直接得到第二终端20的Wi-Fi热点的用户名和密码,接入到第二终端20建立两者之间的第一直连通信连接。
[0048] 下面将在图1所描述的实施例1的基础上,结合本发明以包括三个终端的网络架构进行简要说明。请参阅图2,图2为本发明实施例提供的一种网络架构图。如图2所示,该网络架构中可以包括第一终端10、第二终端20、第三终端30。
[0049] 该第一终端10、第二终端20、第三终端30可以构成一个直连通信集群,该直连通信集群中的各个终端可以通过互相建立的直连通信连接,以交互数据。该直连通信集群中,还可以包括其它终端,本发明实施例仅为展现的其中一个简单的网络架构。
[0050] 除此之外,第一终端10还可以与多个终端(除第二终端20、第三终端30)、建立直连通信连接以形成子直连通信集群。相应地,第二终端20、第三终端30也可以像第一终端10一样,形成各自的子直连通信集群。第一终端10、第二终端20以及第三终端30均可以根据需要通过直连通信连接将数据发送至对应子直连通信集群中。
[0051] 其中,本发明实施例提及的直连通信连接为终端间不借助第三方设备建立的无线通信连接,包括但不限于终端之间的Wi-Fi连接、蓝牙连接、射频连接,如NFC连接、红外线连接、超声波连接等无线通信连接。其中,终端之间的Wi-Fi连接是指两个终端中至少有一个终端开启了Wi-Fi热点功能,另一终端直接接入到该建立了Wi-Fi热点的终端,建立直连通信连接。
[0052] 在一个实施例中,第一终端10、第二终端20、第三终端30互相之间可以通过建立的不同的直连通信连接,如第一直连通信连接、第二直连通信连接实现数据的并发。
[0053] 在一个实施例中,该第一直连通信连接可以为能够快速传输视频、图片等数据量大于或等于预置阈值(或者大于或等于预置的数据量阈值)的数据的通信连接,包括但不限于Wi-Fi连接等无线通信连接。第二直连通信连接为功耗小于预设阈值,且能够传输数据量小于预置阈值(或者小于预置的数据量阈值)的数据的通信连接,包括但不限于,如蓝牙连接、射频连接、红外线连接等无线通信连接。
[0054] 在该第一直连通信连接是针对数据量大于预置阈值(或者大于或等于预置的数据量阈值)的待传输数据中的某部分数据(包括但不限于某一类文件数据,如第二类文件数据)时,该第一终端10、第二终端20、第三终端30可以通过在上述三个终端间建立的第一直连通信连接传输该待传输数据中的某部分数据(包括但不限于某一类文件数据,如第二类文件数据)。
[0055] 或者,在该第二直连通信连接是针对数据量小于预置阈值(或者小于预置的数据量阈值)的待传输数据中的另一部分数据(包括但不限于另一类文件数据,如第一类文件数据)时,该第一终端10、第二终端20、第三终端30可以通过在上述三个终端间建立的第二直连通信连接传输该待传输数据中的另一部分数据(包括但不限于另一类文件数据,如第一类文件数据)。
[0056] 在该第一直连通信连接是针对数据量大于或等于预置阈值(或者大于或等于预置的数据量阈值)的待传输数据时,该第一终端10、第二终端20、第三终端30可以通过在上述三个终端间建立的第一直连通信连接传输该待传输数据。例如,若第一终端10确定出该待传输数据的数据量为20M,预置的数据量阈值为5M。第一终端10可以确定该待传输数据的数据量大于预置的数据量阈值,则通过与该第二终端20建立的第一直连通信连接,如Wi-Fi连接,传输该待传输数据。或者,在该第一直连通信连接是针对数据量小于预置阈值(或者小于预置的数据量阈值)的待传输数据时,该第一终端10、第二终端20、第三终端30可以通过在上述三个终端间建立的第二直连通信连接传输该待传输数据。例如,若该第一终端10确定出该待传输数据的数据量为1M,预置的数据量阈值为5M,第一终端10可以确定该待传输数据的数据量小于预置的数据量阈值,则通过与该第二终端20建立的第二直连通信连接,如蓝牙连接,传输该待传输数据。
[0057] 在一个实施例中,在某一终端将数据发送至另外一个终端时,该另外一个终端在接收到该数据后,可以将该数据作为该另外一个终端的待传输数据。其中,该数据可以是某一终端的待传输数据、待传输数据中部分数据,如某一类数据(包括但不限于某一类文件数据)。换句话说,也可以理解为某一终端的已传输数据可以作为另外一个终端的待传输数据。
[0058] 在一个实施例中,若某一终端(如第一终端10)向另外一个终端(如第二终端20)传输完待传输数据中的某一类数据后,如第一类文件数据,则可以发送指示信息至该另外一个终端(如第二终端20)或者目标终端(如第三终端30),该指示信息可以用于指示该另外一个终端(如第二终端20)和目标终端(如第三终端30)建立第二直连通信连接,并在该第二直连通信连接上传输该第一类文件数据。传输完的第一类文件数据可以作为某一终端对另外一个终端的已传输数据。
[0059] 在一个实施例中,若某一终端(如第一终端10)对另外一个终端(如第二终端20)的已传输数据在待传输数据中的比例超过预置的比例阈值后,如超过80%,则可以发送通知消息至该另外一个终端(如第二终端20)或者目标终端(如第三终端30),该通知消息可以用于通知该另外一个终端(如第二终端20)作为发送端,并通过与目标终端(如第三终端30)建立的直连通信连接,传输该已传输数据。
[0060] 在一些实施例中,直连通信集群中各终端间还可以通过第二直连通信连接交互一些请求/消息/指令/信息。例如,上述的通知消息、指示信息。
[0061] 该第一终端10、第二终端20、第三终端30可以根据各自的数据收发的需求,作为发送端和/或接收端来传输数据。
[0062] 在第一终端10需要向直连通信集群中的各个终端传输数据时,可以作为发送端以通过与该直连通信集群中的各个终端建立的直连通信连接,向各个终端传输数据。该直连通信集群中的各个终端可以作为接收端,通过与第一终端10建立的直连通信连接(例如第一直连通信连接或第二直连通信连接)接收由第一终端10发送的数据。
[0063] 第一终端10可以通过与第二终端20间建立的直连通信连接发送数据至第二终端20。第二终端20可以通过与第一终端10建立的直连通信连接接收到该第一终端10发送的数据。其中,第一终端20还可以通过与第三终端30间建立的直连通信连接发送数据至第三终端30。第三终端30可以通过与第一终端10建立的直连通信连接接收到该第一终端10发送的数据。
[0064] 在一个实施例中,该第一终端10可以在需要向直连通信集群中的各个终端传输数据时,将直连通信模式配置为发送模式,以向该直连通信集群中各个处于接收模式的终端发送数据。相应地,该第二终端20、该第三终端30可以分别将直连通信模式配置为接收模式,以针对性的接收处于发送模式的终端发送的数据,可以更好地根据各终端的收发需求来选择发送和接收数据。
[0065] 其中,在第一终端10被配置为发送模式,且该第二终端20被配置为接收模式时,第一终端10可以通过与第二终端20间建立的直连通信连接发送数据至第二终端20。第二终端20可以通过与第一终端10建立的直连通信连接接收到该第一终端10发送的数据。
[0066] 在第一终端10在被配置为发送模式,且该第三终端30被配置为接收模式时,第一终端10也可以通过与第三终端30建立的直连通信连接发送数据至第三终端30。第三终端30可以通过与第一终端10建立的直连通信连接接收到该第一终端10发送的数据。
[0067] 该第一终端10除了与该直连通信集群中的各个终端直接建立直连通信连接以发送数据之外,还可以通过该直连通信集群中的其它终端向直连通信集群中的目标终端发送数据。
[0068] 在一个实施例中,该目标终端可以为第一终端10确定出的该直连通信集群中需要接收该待传输数据的初始终端中,与第一终端10间的信号强度小于预置信号强度阈值的初始终端。或者,该目标终端也可以是该直连通信集群中未接收到第一终端10发送的数据的终端。或者,该目标终端还可以是该直连通信集群中与该第一终端10的数据传输过程中断的终端。或者,该目标终端还可以是第一终端10根据获取该直连通信集群中的接收端的设备信息选取的终端。在一个实施例中,该目标终端可以是接收端,还可以是被配置为接收模式的终端。
[0069] 对应到本网络架构中,该第一终端10除了直接与该第三终端30建立直连通信连接以发送数据之外,还可以通过第二终端20,以发送数据至目标终端,如第三终端30。相应地,第一终端10除了与该第二终端20建立直连通信连接以发送数据之外,还可以通过第三终端30以发送数据至目标终端,该目标终端例如为第二终端20。
[0070] 下面将以第一终端10通过第二终端20发送数据至作为目标终端的第三终端30为例进行进一步说明。
[0071] 若第一终端10通过与第二终端20建立的直连通信连接,发送数据至第二终端20。第二终端30可以通过与第三终端30建立的直连通信连接以将该第一终端10发送的数据发送至第三终端30。可选地,该第二终端20可以被配置为中继模式,以便可以接收第一终端10发送的数据,并将接收到的该第一终端10发送的数据转发至第三终端30。
[0072] 在一个实施例中,该第二终端20可以由第一终端10根据该直连通信集群中的各个终端的性能信息确定的。
[0073] 其中,该第二终端20可以是第一终端10根据该直连通信集群中的各个终端的性能信息确定出的性能状态较佳的终端。如,该第二终端20为第一终端10确定出的该直连通信集群中剩余电量最多的终端,或者剩余电量超过预置的电量阈值的终端。
[0074] 发送端在和多个接收端形成直连通信集群后,各个接收端可以将当前本机的性能信息,如存储空间、剩余电量、剩余内存、传输速度等信息上报至发送端,以便该发送端可以根据该上报的性能信息确定出性能状态最好的某个终端以发送数据至目标终端。
[0075] 在一个实施例中,该直连通信集群中的各个终端在检测到第一终端10用于获取性能信息的请求时,可以将该直连通信集群中的各个终端性能信息分别通过与该第一终端10建立的直连通信连接发送至该第一终端10。
[0076] 在一个实施例中,该第二终端20还可以是在确定该第一终端10的性能信息满足预置切换条件,如性能信息小于对应预置的阈值时,该第一终端10根据该直连通信集群中的各个终端的性能信息确定出的终端。
[0077] 在一个实施例中,该第二终端20还可以是在确定该第一终端10的性能信息小于对应预置的阈值时,该第一终端10根据该直连通信集群中的各个终端的性能信息确定出的终端,如性能状态较佳的终端。其中,第一终端10的性能信息包括但不限于第一终端10的存储空间、剩余电量、剩余内存、传输速度等信息。
[0078] 在一个实施例中,该第一终端10的性能信息小于对应预置的阈值可以通过如下方式确定:在该第一终端10的性能信息包括剩余电量时,判断该剩余电量是否小于预置的第一电量阈值;在该第一终端10的性能信息包括传输速度时,判断该传输速度是否小于预置的第一速度阈值;若该剩余电量小于该预置的第一电量阈值和/或该传输速度小于该预置的第一速度阈值,则确定该第一终端10的性能信息小于对应预置的阈值。
[0079] 其中,除了可以利用第一终端10的性能信息中的各个信息以单独判断该第一终端10的性能信息是否小于对应预置的阈值外,还可以将第一终端10的性能信息中的剩余电量、剩余内存、存储空间、传输速度等信息以递进或者并列的形式组合起来判断第一终端10的性能信息是否小于对应预置的阈值。
[0080] 在一个实施例中,该第一终端10的性能信息小于对应预置的阈值还可以通过如下方式确定:在该第一终端10的性能信息包括剩余电量时,判断该剩余电量是否小于预置的第一电量阈值;若小于,在该第一终端10的性能信息包括传输速度时,判断该传输速度是否小于预置的第一速度阈值;若小于,若该剩余电量小于该预置的第一电量阈值和/或该传输速度小于该预置的第一速度阈值,则确定该第一终10端的性能信息小于对应预置的阈值。
[0081] 在一个实施例中,该第一终端10根据该直连通信集群中的各个终端的性能信息确定出第二终端20可以包括:判断该直连通信集群中各个终端的剩余电量是否超过预置的电量阈值;判断该直连通信集群中各个终端的剩余内存是否超过预置的剩余内存阈值;确定该各个终端中剩余电量超过预置的电量阈值,和/或确定该各个终端中剩余内存超过预剩余内存阈值的终端为第二终端。在一个实施例中,该电量阈值、速度阈值对应可以为第二电量阈值、第二速度阈值。
[0082] 其中,除了可以利用直连通信集群中各个终端的性能信息中的各个信息以单独判断以确定出第二终端20外,还可以将直连通信集群中各个终端的性能信息中的各个信息以递进或者并列的形式组合起来确定出第二终端20。
[0083] 在一个实施例中,该第一终端10根据该直连通信集群中的各个终端的性能信息确定出第二终端20可以包括:判断该直连通信集群中各个终端的性能信息中的剩余电量是否大于或者等于预置的第二电量阈值;在确定该各个终端中包括剩余电量大于或者等于该预置的第二电量阈值的多个终端时,判断该多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取该多个终端中传输速度大于或者等于该预置的第二速度阈值的终端作为第二终端。
[0084] 在一个实施例中,该各个终端的性能信息除了可以包括前述的剩余电量、剩余内存、存储空间、传输速度,还可以包括已接收数据的数据量。
[0085] 在一个实施例中,该第一终端10根据该直连通信集群中的各个终端的性能信息确定出第二终端20还可以包括:判断该直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;在确定该各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断该多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取该多个终端中传输速度大于或者等于该预置的第二速度阈值的终端作为第二终端。
[0086] 在一个实施例中,该第二终端20还可以是第一终端10根据获取的直连通信集群中各个终端的设备信息确定的。
[0087] 处于发送模式的第一终端10可以通过与处于中继模式的第二终端20建立的直连通信连接,发送数据至处于中继模式的第二终端20。处于中继模式的第二终端30可以通过与处于接收模式的第三终端30建立的直连通信连接,将该处于接收模式的第一终端10发送的数据发送至处于接收模式的第三终端30。
[0088] 在一个实施例中,第二终端10可以通过与第三终端30间的第二直连通信连接,获取第三终端30的设备信息;第二终端20可以将第二终端20的设备信息、第三终端30的设备信息发送至第一终端10。第一终端10在接收到第二终端20发送的设备信息后,可以将该第三终端30的设备信息确定为发送数据的目标终端。
[0089] 以手机A包括接收模式、发送模式、中继模式为例。用户可以通过点击中继模式选项或者图标,将手机A的直连通信模式设置为中继模式。处于中继模式的手机A可以获取其它处于接收模式的手机B的设备信息,并且手机A可以获取到处于发送模式的手机C的设备信息,从而可以将该处于接收模式的手机B的设备信息发送至该处于发送模式的手机C。
[0090] 该第二终端20可以在接收到第一终端10的转发请求时,通过第一直连通信连接获取发起终端10的发送的数据,并可以根据该转发请求中指示的传输路径转发该第一终端发送的数据;该转发请求指示的传输路径可以为通过第二终端20将第一终端10发送的数据发送至第三终端30。该转发请求可以包括第三终端的设备信息。该传输路径可以是第一终端10根据获取的设备信息确定的。
[0091] 在一个实施例中,该第二终端20可以在接收到第一终端10的转发请求时,通过第二直连通信连接获取发起终端10的发送的数据,并可以根据该转发请求中指示的传输路径转发该第一终端发送的数据;该转发请求指示的传输路径可以为通过第二终端20将第一终端10发送的数据发送至第三终端30。该转发请求可以包括第三终端的设备信息。该传输路径可以是第一终端10根据获取的设备信息确定的。
[0092] 在一个实施例中,如果该转发请求中指示的传输路径所指示的下一节点是第二终端20,则第一终端10与该第二终端20可以建立第一直连通信连接以传输数据;如果该转发请求中指示的传输路径所指示的下一节点是该直连通信集群中其它终端,则第一终端10与该其它终端建立第一直连通信连接以传输数据。该其它终端可以为其它接收端。
[0093] 该第一终端10可以显示一个用户界面,该用户界面可以用于显示获取的设备信息。第一终端10可以接收针对设备信息的选择操作,并根据该选择操作确定出传输路径。例如,第一终端10在需要向第三终端30传输数据1时,可以在选取该第三终端30以作为发送数据1的目标终端后,再选取第二终端20以确定传输路径为通过第二终端20进行数据转发。
[0094] 在一个实施例中,该设备信息可以包括对应终端的标识,如媒体访问控制(Media Access Control,MAC)地址、互联网协议(Internet Protocol,IP)地址、名称、端口号等。在一个实施例中,该设备信息可以包括对应终端的标识、以及对应终端所处的直连通信模式。
[0095] 该第二终端20还可以是被配置为接收模式的终端,在接收到第一终端10发送的数据后,可以通过将第二终端20的直连通信模式配置为发送模式,使得该第二终端20可以切换为发送端以发送数据到处于接收模式的第三终端30。在一个实施例中,若第三终端30一直用于接收数据,则可以将该第三终端30的直连通信模式配置为接收模式。
[0096] 在一个实施例中,直连通信集群中的各个终端设置有直连通信模式,该直连通信模式可以为发送模式、接收模式、中继模式。若终端被配置为发送模式,则该终端可以为用于发送数据的发送端,若该终端被配置为中继模式,那么该终端可以用于转发数据。若终端被配置为接收模式,则该终端可以为用于接收数据的接收端。
[0097] 在一个实施例中,各个终端可以配置有一个直连通信按钮,点击该直连通信按钮后,可以进行直连通信模式的选择。
[0098] 当该直连通信集群中的某个终端开启中继模式后,某个终端可以将周围扫描到的处于接收模式的终端的设备信息,发送到周围处于发送模式的终端。通常在某个终端的传输距离受限,可以通过处于中继模式的终端来转发数据以扩大传输距离。除此之外,若某个终端的传输距离未受限,则也可以通过处于中继模式的终端来转发数据来扩展数据传输方式。
[0099] 在一个实施例中,发送端可以管理自己扫描到的接收端的设备信息,以及中继设备发送过来的接收端的设备信息。该接收端可以为处于接收模式的终端。中继终端可以为处于中继模式的终端。该发送端可以为处于发送模式的终端。
[0100] 在一个实施例中,若用户在发送端选择一个接收端作为目标终端后(可以是根据获取的接收端的设备信息选取的),则发送端可以根据该接收端反馈上来的路径将数据先传输至下一个的中继终端,在由该中继终端传输至目标终端。或者,在该用户选择一个接收端作为目标终端后,用户可以再选取一个以转发数据的中继终端,再由该中继终端将数据传输至目标终端。
[0101] 该直连通信集群中各个终端根据设置的直连通信模式不同,可以进行多个直连通信模式的切换,以便基于设置的不同直连通信模式,来使各个终端提供不同功能。并且可以在终端间距离发生变化,距离较远、终端性能较差等原因导致不能继续传输任务或者不想继续数据传输时,通过将终端作为中继终端的方式,可以扩展数据传输距离,增加组网的灵活性。
[0102] 在一个实施例中,该第一终端10在被配置为中继模式时,可以基本实现第二终端20处于中继模式时所实现的所有功能。该第二终端20在被配置为发送模式时,可以基本实现第一终端10处于发送模式时所实现的所有功能。
[0103] 在第一终端10需要向第二终端20发送数据时,该第一终端10向第二终端20发送的数据可以为第一终端10选取的待传输数据。该待传输数据包括但不限于该文档、音视频文件、图片等数据。其中,第一终端10可以通过与第二终端20间建立直接通信连接来传输数据。该第一终端10向第二终端20传发送的数据还可以为第一终端10选取的待传输数据中的部分数据(包括但不限于某一类文件数据)。在一个实施例中,该发送的数据还可以为第一终端10对第二终端20的已传输数据,该已传输数据可以为上述待传输数据,还可以是待传输数据中的部分数据(包括但不限于某一类文件数据)。
[0104] 在一个实施例中,第二终端20与第三终端30之间的用于传输数据的直连通信连接可以通过第一终端10发送连接请求的形式触发建立。
[0105] 在一个实施例中,该连接请求可以由第一终端10发送至目标终端,如第三终端30。其中,该连接请求可以包括第二终端20的设备信息。或者,该连接请求还可以由第一终端10发送至第二终端20。其中,该连接请求可以包括目标终端,如第三终端30的设备信息。
[0106] 在一个实施例中,根据连接请求所触发建立的直连通信连接的不同,该连接请求还可以包括第一连接请求,第二连接请求。
[0107] 在一个实施例中,第一终端10可以确定发送的数据的数据量;并在该数据的数据量大于或等于预置阈值(或者大于或等于预置的数据量阈值)时,发送第一连接请求至第二终端20或者第三终端30,该第一连接请求10用于触发建立该第二终端20与第三终端30间的第一直连通信连接;在该数据的数据量小于预置阈值(或者小于预置的数据量阈值)时,则发送第二连接请求至第二终端20或者第三终端30,该第二连接请求用于触发建立该第二终端20与第三终端30之间的第二直连通信连接,从而实现根据第一终端10传输的数据的数据量的不同,触发与第二终端20建立不同的直连通信连接以进行数据的传输,提高了数据传输效率。其中,该第一连接请求、第二连接请求可以通过第一终端10与第二终端间建立的第二直连通信连接发送至第二终端20,也可以通过第一终端10与第三终端30建立的第二直连通信连接发送至第三终端30。
[0108] 在一个实施例中,第一终端10向第二终端20发送的数据还可以是将待传输数据进行分类后通过至少一个直连通信连接依次发送的数据,或者通过多个直连通信连接并行发送的数据。其中,对该待传输数据进行分类包括但不限于将该待传输数据中各个数据按照类别、大小、名称进行分类。
[0109] 在一个实施例中,第一终端10可以确定出该待传输数据中的第一类文件数据,该第一类文件数据为数据量小于预置阈值的数据;将该第一类文件数据第一终端10通过与该第二终端20建立的第二直连通信连接,将该第一类文件数据发送至该第二终端20。第一终端10确定出该待传输数据中的第二类文件数据,该第二类文件数据为数据量大于或等于预置阈值的数据;该第一终端10通过与该第二终端20建立的第一直连通信连接,将该第二类文件数据发送至该第二终端20。
[0110] 假设待传输数据包括文件1、文件2、文件3,若按照数据大小对该待传输数据进行分类。其中数据量小于1M的有文件1。则数据量大于1M的待传输数据有文件2、文件3。可以确定文件1为第一类文件数据。需要说明的是,第二终端20在接收到第一终端10发送的数据后,可以通过与第三终端30间的直连通信连接发送至第三终端30。
[0111] 第二终端20与第三终端30间的直连通信连接包括但不限于以第二终端20接收到连接请求后触发建立。其中,该连接请求可以为第一终端10发送的,还可以为第三终端30发送的。在一个实施例中,该连接请求可以包括前面提到的第一连接请求或者第二连接请求。
[0112] 在一个实施例中,第一终端10可以发送通知消息至第二终端20或者第三终端30,该通知消息用以通知第二终端20作为发送端,并与第三终端30之间通过建立的直连通信连接传输第一终端10发送的数据或者第一终端10的已传输数据。其中,第二终端20可以接收第一终端10发送的通知消息。其中,若该第一终端10在确定目标终端为多个接收端时。第二终端20可以选取将该第一终端10发送的数据或者第一终端10的已传输数据分别发送至该多个接收端。
[0113] 在一个实施例中,第一终端10可以发送指示消息至第二终端20或者第三终端30,该指示消息用以指示第二终端20与第三终端30之间建立直连通信连接,并指示第二终端20与第三终端30之间传输该第一终端10发送的数据或者第一终端10的已传输数据,如第一类文件数据。其中,第二终端20可以通过第二直连通信连接接收第一终端10发送的指示信息。
[0114] 若该第一终端10在确定目标终端为多个接收端时。则第二终端20可以选取将该第一终端10发送的数据或者第一终端10的已传输数据,如第一类文件数据分别发送至该多个接收端。
[0115] 在一个实施例中,该第一终端10可以在完成针对目标终端的部分数据,如某一类文件数据的传输任务后,再依次进行或者同时向其它设备进行剩余数据的传输任务;还可以同时开展多个传输任务,例如在向目标终端进行数据传输时,同时向多个设备中的部分终端或者全部终端进行数据传输。
[0116] 在一个实施例中,发送端可以优先将小文件传输给当前性能状态较佳或者最好的接收端。该小文件可以为本发明实施例提及的待传输数据中数据量小于预置阈值的数据。并且,发送端可以在传完该小文件后,继续传输其它文件,并且可以发送一些信息,如设备信息,或包括设备信息的连接请求,至其它接收端,以便建立该性能状态最好的接收端与其它接收端间的直连通信连接。其中,发送端还可以触发已经接收完小文件的性能状态最好的接收端将部分数据发送至其它接收端(包括但不限于以通知消息触发)。优先接收到部分数据的终端可以向其它目标接收端发送刚刚接收到的小文件,从而可以组成多终端并行传输的方式。该发送端可以为第一终端10,该性能状态最好的终端可以为第二终端20。该其它目标终端可以为第三终端30。通过多终端并行传输的方式,可以提高数据传输效率。
[0117] 发送端还可以优先将小文件传输给当前性能状态最好的接收端,并将其它接收端的信息,如设备信息或包含设备信息的连接请求,发送至该性能状态最好的接收端,以便该性能状态最好的接收端可以与其它接收端间建立直连通信连接以传输数据。该小文件可以为本发明实施例提及的待传输数据中数据量小于预置阈值的第一类文件数据。并且,发送端可以在传完该小文件后,传输大文件。该大文件可以为待传输数据中数据量大于预置阈值的第二类文件数据。若该发送端因为某些原因(如电量低于预置的电量阈值)而不能继续传输任务时,可以触发该性能状态最好的接收端作为发送端以发送接收到的数据到其它目标接收端(包括但不限于以通知消息触发),从而提高直连通信集群中的终端的整体工作效率。该发送端可以为第一终端10,该性能状态最好的终端可以为第二终端20。该其它目标终端可以为第三终端30。
[0118] 在一些实施例中,上述待传输数据中部分数据,如某一类数据(包括但不限于第一类文件数据或第二类文件数据)或者已传输数据可以作为目标数据。或者,上述待传输数据也可以称为目标数据。
[0119] 根据第一终端10对直连通信集群中各个终端的传输任务分配的不同,对该数据划分情况也不同。如,将该待传输数据划分为多个类别,分别发送至多个目标终端,再由多个终端将需要发送至其它终端的数据通过至少一个直连通信连接依次或并行发送至其它终端,这样就完成了多个设备的协作数据传输。相应地,随着参与协作传输的设备的增加,该数据也可以被划分为、第一类数据、第二类数据、第三类数据、第四类数据……其中,本发明实施例对数据的标号、称谓不做限定。
[0120] 请参阅图3,为本发明实施例提供的一种数据传输方法的流程示意图。其中,该方法可以应用于智能终端,包括但不限于手机、平板电脑、智能可穿戴设备等便携式移动设备。其中,该方法可以包括:
[0121] S201、在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息。
[0122] 本发明实施例中,该第一终端的性能信息包括但不限于第一终端的存储空间、剩余电量、剩余内存、传输速度等信息。该待传输数据可以为第一终端选取的将要传输的音视频文件、图片、文档等数据。
[0123] 需要说明的是,第一终端可以与直连通信集群中的各个终端建立直连通信连接。该直连通信连接可以为第一直连通信连接和/或第二直连通信连接。
[0124] S202、若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端。
[0125] 本发明实施例中,该各个终端的性能信息包括但不限于各个终端的存储空间、剩余电量、剩余内存、传输速度等信息。
[0126] 可选地,在该第一终端的性能信息包括剩余电量时,判断该剩余电量是否小于预置的第一电量阈值;在该第一终端的性能信息包括传输速度时,判断该传输速度是否小于预置的第一速度阈值;若该剩余电量小于该预置的第一电量阈值和/或该传输速度小于该预置的第一速度阈值,则确定该第一终端的性能信息满足预置的切换条件。
[0127] 举例来说,假设第一终端的预置的第一电量阈值为30%、第一速度阈值为0.5M/s。在该第一终端当前的剩余电量为60%,可以确定传输速度为1M/s,则可以确定第一终端的性能信息不小于对应预置的阈值。若该终端当前的剩余电量低于60%,和/或当前的传输速度小于1M/s,则可以确定该第一终端的性能信息小于对应预置的阈值。
[0128] 本发明实施例可以在该第一终端性能状态不佳时,及时地确定出第二终端以传输待传输数据,从而可以保障数据传输的连续性,提高了数据传输效率,避免了第一终端因性能不佳导致数据传输的中断,需再建立连接以重传数据。其中,该传输速度指的是数据传输速度。可选地,可以通过先发送一个探测帧以测试该传输速度。
[0129] 可选地,在该第一终端的性能信息包括传输速度时,第一终端可以判断该传输速度是否小于预置的第一速度阈值;若小于,在该第一终端的性能信息包括剩余电量时,第一终端可以判断该剩余电量是否小于预置的第一电量阈值;若小于,则第一终端可以确定该第一终端的性能信息小于对应预置的阈值。
[0130] 举例来说,假设第一终端的预置的第一电量阈值为30%、第一速度阈值为0.5M/s。在该第一终端当前的传输速度为0.3M/s时,可以确定该传输速度小于0.5M/s。若该第一终端当前的剩余电量为20%,则可以进一步确定剩余电量小于30%。因此,可以确定第一终端的性能信息小于对应预置的阈值。
[0131] 可选地,在该第一终端的性能信息包括存储空间时,第一终端可以判断该存储空间是否小于预置的第一存储空间阈值;若小于,在该第一终端的性能信息包括剩余内存时,第一终端可以判断该剩余内存是否小于预置的第一剩余内存阈值;若小于,则第一终端可以确定该第一终端的性能信息小于对应预置的阈值。
[0132] 可选地,在该第一终端的性能信息包括传输速度时,第一终端可以判断该传输速度是否小于预置的第一速度阈值;若小于,在该第一终端的性能信息包括剩余内存时,第一终端可以判断该剩余内存是否小于预置的第一剩余内存阈值;若小于,则第一终端可以确定该第一终端的性能信息小于对应预置的阈值。
[0133] 在步骤S302中,第一终端可以根据该直连通信集群中各个终端的性能信息确定出第二终端,以便第一终端将数据传输任务转交给第二终端,第二终端可以继续第一终端的数据传输任务,从而保障数据传输的时效性。
[0134] 其中,该第一终端可以通过与该直连通信集群中各个终端建立的第二直连通信连接,来获取直连通信集群中各个终端的性能信息。
[0135] 本发明实施例中,该第二直连通信连接包括但不限于射频连接、蓝牙连接、超声波连接等无线通信连接。该第一直连通信连接可以为Wi-Fi连接等无线通信连接。
[0136] 举例来说,如图4所示,该直连通信集群中包括终端400、终端401、终端402、终端403、终端404。在该直连通信集群中,若第一终端为终端402,则终端402可以通过第二直连通信连接,如蓝牙连接,获取到终端400的剩余电量、终端401的剩余电量、终端403的剩余电量、终端404的剩余电量。
[0137] 其中,该第一终端可以通过比较分析该直连通信集群中的各个终端的性能信息以确定出性能状态较佳或最佳的终端作为第二终端。
[0138] 可选地,若获取的性能信息为剩余电量,则第一终端可以通过比较分析该通信集群中各个终端的剩余电量,从而可以确定出剩余电量较多或者最多的终端为第二终端。
[0139] 可选地,若获取的性能信息为剩余内存,则第一终端可以通过比较分析该通信集群中各个终端的剩余内存,从而可以确定出剩余内存较多或者最多的终端为第二终端。
[0140] 可选地,若获取的性能信息为传输速度,则第一终端可以通过比较分析该通信集群中各个终端的数据的传输速度,从而可以确定出传输速度较快或者最快的终端为第二终端。
[0141] 可选地,第一终端还可以结合各个终端的存储空间、剩余电量、剩余内存、传输速度等信息中的两种或者多种信息来确定出第二终端。
[0142] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的剩余电量是否大于或者等于预置的第二电量阈值;在确定该各个终端中包括剩余电量大于或者等于该预置的第二电量阈值的多个终端时,判断该多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取该多个终端中传输速度大于或者等于该预置的第二速度阈值的终端作为第二终端。
[0143] 举例来说,如图4所示,该直连通信集群中包括终端400、终端401、终端402、终端403、终端404。在该直连通信集群中,若第一终端为终端402,则终端402可以通过第二直连通信连接,如蓝牙连接,获取到终端400的剩余电量以及传输速度、终端401的剩余电量以及传输速度、终端403的剩余电量以及传输速度、终端404的剩余电量以及传输速度。若预置的第二电量阈值为60%,预置的第二速度阈值为1M/s,在终端402确定出的剩余电量大于60%的终端有终端400以及终端401时,可以再进一步判断终端400的传输速度以及终端401中传输速度是否大于1M/s的终端。若终端401的传输速度大于1M/s,则可以确定终端401为第二终端。
[0144] 进一步可选地,可以选取该多个终端中传输速度最大的终端作为第二终端。
[0145] 其中,该第二电量阈值可以与前述第一电量阈值相同,也可以不同。该第二速度阈值也可以与前述第一速度阈值相同,也可以不同。
[0146] 需要说明的是,在确定第二终端作为发送端传输数据时,往往需要选取电量较多,传输速度较快的终端来作为第二终端。因此,根据电量以及传输速度确定出性能状态较佳或者最佳的第二终端的情况,与第一终端的性能信息低于对应预置的阈值,即与第一终端的性能状态不好的情况确定出第二终端的情况有所不同,所以第二速度阈值往往大于该第一速度阈值、第二电量阈值大于第一电量阈值。
[0147] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;在确定该各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断该多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取该多个终端中传输速度大于或者等于该预置的第二速度阈值的终端作为第二终端。其中,终端可以根据确定出数据的数据量较大的终端,从而保障数据传输的完整性,并且可以通过进一步通过确定传输速度较快的终端,可以保障终端间处于较高的传输速度,能快速地传输数据。其中,若存在终端未接收到第一终端传输的数据,则已接收数据的数据量为0。
[0148] 举例来说,如图4所示,该直连通信集群中包括终端400、终端401、终端402、终端403、终端404。在该直连通信集群中,若第一终端为终端402,则终端402可以通过第二直连通信连接,如蓝牙连接,获取到终端400的已接收数据的数据量以及传输速度、终端401的已接收数据的数据量以及传输速度、终端403的已接收数据的数据量以及传输速度、终端404的已接收数据的数据量以及传输速度。若预置的数据接收阈值为100M、预置的第二速度阈值为1M/s。若终端402确定出已接收数据的数据量大于或等于100M的终端有终端400以及终端401,则可以再进一步判断终端400的传输速度以及终端401中传输速度是否大于1M/s的终端。若终端401的传输速度大于1M/s,则可以确定终端401为第二终端。
[0149] 进一步可选地,可以选取该多个终端中传输速度最大的终端作为第二终端。
[0150] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的剩余内存是否大于或者等于预置的第二剩余内存阈值;在确定该各个终端中包括剩余内存大于或者等于该预置的第二剩余内存阈值的多个终端时,判断该多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取该多个终端中传输速度大于或者等于该预置的第二速度阈值的终端作为第二终端。
[0151] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;在确定该各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断该多个终端的性能信息中的剩余内存是否大于或者等于预置的第二剩余内存阈值;选取该多个终端中剩余内存大于或者等于该预置的第二剩余内存阈值的终端作为第二终端。
[0152] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;在确定该各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断该多个终端的性能信息中的存储空间是否大于或者等于预置的第二存储空间阈值;选取该多个终端中存储空间大于或者等于该预置的第二存储空间阈值的终端作为第二终端。
[0153] 进一步可选地,第一终端判断该直连通信集群中各个终端的性能信息中的存储空间是否大于或等于预置的第二存储空间阈值;在确定该各个终端中包括已接收数据的数据量大于或等于预置的第二存储空间阈值的多个终端时,判断该多个终端的性能信息中的剩余内存是否大于或者等于预置的第二剩余内存阈值;选取该多个终端中剩余内存大于或者等于该预置的第二剩余内存阈值的终端作为第二终端。
[0154] S303、若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端。
[0155] 本发明实施例中,该通知消息用于通知该第二终端作为发送端,并与该目标终端之间通过建立的直连通信连接传输该已传输数据。
[0156] 可选地,该已传输数据在所述待传输数据中的比例可以为该已传输数据在该待传输数据中所占的数据量。相应地,该预置的比例阈值可以为预置的数据量的阈值。可选地,可以为该已传输数据在该待传输数据中所占的数据量的阈值。可选地,该已传输数据在所述待传输数据中的比例还可以为该已传输数据在该待传输数据中所占的百分比。相应地,该预置的比例阈值可以为预置的百分比的阈值。可选地,可以为该已传输数据在该待传输数据中所占的百分比的阈值。
[0157] 需要说明的是,包括但不限于以发送指令/请求的形式至该第二终端和/或该直连通信集群中的目标终端的方式,以用于触发该第二终端与该直连通信集群中的目标终端之间建立直连通信连接。其中,指令/请求中可以包括不同的内容。
[0158] 可选地,该第一终端确定该已传输数据的数据量;在该已传输数据的数据量大于或等于预置的数据量阈值时,则发送第一连接请求,该第一连接请求用于触发建立该第二终端与该直连通信集群中的目标终端之间的第一直连通信连接;在该已传输数据的数据量小于预置的数据量阈值时,则发送第二连接请求,该第二连接请求用于触发建立该第二终端与该直连通信集群中的目标终端之间的第二直连通信连接。
[0159] 举例来说,若第一终端确定出该已传输数据的数据量为10M,预置的数据量阈值为6M。第一终端可以确定该已传输数据的数据量大于预置的数据量阈值,则发送第一连接请求。该第一连接请求可以触发该第二终端与直连通信集群中的目标终端建立第一直连通信连接,如Wi-Fi连接。
[0160] 又举例来说,若该第一终端确定出该已传输数据的数据量为10M,预置的数据量阈值为15M,第一终端可以确定该已传输数据的数据量小于预置的数据量阈值,则发送第二连接请求。该第二连接请求可以触发该第二终端与该直连通信集群中的目标终端建立第二直连通信连接,如蓝牙连接。
[0161] 可选地,该直连通信集群中的目标终端可以通过如下方式确定:该第一终端确定该直连通信集群中需要接收该待传输数据的初始终端;该第一终端向各初始终端发送探测信号;该探测信号用于探测该各初始终端与该第一终端间的信号强度;确定出该各初始终端中与该第一终端间的信号强度小于预置信号强度阈值的初始终端为目标终端。其中,该初始终端不包括确定出的第二终端。该信号强度包括但不限于以数字,图标等形式呈现。
[0162] 举例来说,如图4所示,若第一终端为终端402,第二终端为终端401。终端402可以确定该直连通信集群中需要接收该待传输数据的初始终端包括:终端400、终端403、终端404,则终端402分别发送探测信号至终端400、终端403、终端404,以测试终端402与终端400间的信号强度,终端402与终端403间的信号强度,终端402与终端404间的信号强度。若测试到终端402与终端400间的信号强度为80,终端402与终端400间的信号强度为60,终端402与终端400间的信号强度为30。假设预置信号强度阈值为50,则可以确定终端400为目标终端,以便终端400与终端401之间建立直连通信连接,并传输待传输数据。
[0163] 可选地,该第一终端可以确定该待传输数据的数据量。在待传输数据的数据量大于或等于预置的数据量阈值时,通过该第一终端与第二终端建立的第一直连通信连接将该待传输数据发送至第二终端。在该待传输数据的数据量小于预置的数据量阈值时,可以通过该第一终端与第二终端建立的第二直连通信连接将该待传输数据发送至第二终端。
[0164] 举例来说,若第一终端确定出该待传输数据的数据量为10M,预置的数据量阈值为6M。第一终端可以确定该待传输数据的数据量大于预置的数据量阈值,则通过与该第二终端建立的第一直连通信连接,如Wi-Fi连接,传输该待传输数据。
[0165] 再举例来说,若该第一终端确定出该待传输数据的数据量为10M,预置的数据量阈值为15M,第一终端可以确定该待传输数据的数据量小于预置的数据量阈值,则通过与该第二终端建立的第二直连通信连接,如蓝牙连接,传输该待传输数据。
[0166] 可见,图3所示的实施例中,第一终端可以在确定该第一终端的性能信息小于对应预置的阈值时,可以确定出第二终端,并可以已传输数据在待传输数据中的比例大于或者等于预置的比例阈值时,可以发送通知消息至第二终端,从而可以由该第二终端将该已传输数据发送至目标终端,实现了在终端可以根据自身性能状态来选取合适的终端,继续数据的传输,保障了数据传输的连续性和完整性,并且可以通过多终端的协作数据传输来提高数据传输的效率。
[0167] 请参阅图5,为本发明再一实施例提供的一种数据传输方法的流程示意图。其中,该方法可以应用于智能终端,包括但不限于手机、平板电脑、智能可穿戴设备等便携式移动设备。其中,该方法可以包括:
[0168] S501、在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端。
[0169] 举例来说,如图6所示,该直连通信集群中包括终端600、终端601、终端602、终端603、终端604。在该直连通信集群中,若第一终端为终端602,第二终端为终端601,则终端
601通过第二直连通信连接,在接收到终端601发送的用于获取性能信息的请求时、终端601将本机的性能信息发送至终端602。
[0170] 本发明实施例中,该第二终端可以为第一终端可以根据该直连通信集群中各个终端的性能信息确定出的终端。该第二终端可以与该第一终端建立直连通信连接,包括第一直连通信连接和/或第二直连通信连接。
[0171] 其中,该第二终端可以通过与第一终端建立的第二直连通信连接,如蓝牙连接,来发送该第二终端的性能信息。该第二终端的性能信息包括但不限于该第二终端的剩余内存、剩余电量、存储空间、传输速度等信息。
[0172] 本发明实施例中,该第二直连通信连接包括但不限于射频连接、蓝牙连接、超声波连接等无线通信连接。该第一直连通信连接可以为Wi-Fi连接等无线通信连接。
[0173] S502、若接收到所述第一终端发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端。
[0174] 可选地,第二终端可以接收第一连接请求,用于触发建立该第二终端与该直连通信集群中的目标终端之间的第一直连通信连接;或者,第二终端可以接收第二连接请求,用于触发建立该第二终端与该直连通信集群中的目标终端之间的第二直连通信连接。
[0175] 举例来说,如图6所示,若第一终端为终端602,第二终端为终端601。若终端601接收到终端602发送的第一连接请求,该连接请求中可以包括终端600的设备信息,那么可以确定终端600为目标终端。则终端601可以通过终端600的设备信息与终端600之间建立第一直连通信连接,以便终端601可以作为发送端以传输接收到的终端602发送的已传输数据。
[0176] 本发明实施例中,该连接请求为各目标终端发送的,或者为所述第一终端发送的。
[0177] 可选地,该连接请求根据已传输数据的数据量的不同,可以为第一终端发送的第一连接请求,用于触发该第二终端与该直连通信集群中的目标终端建立第一直连通信连接。该第一连接请求中可以包括该直连通信集群中的目标终端的设备信息,以便该第二终端与该直连通信集群中的目标终端建立第一直连通信连接。
[0178] 可选地,该连接请求根据已传输的数据量的不同,还可以为第一终端发送的第二连接请求,用于触发该第二终端与该直连通信集群中的目标终端建立第二直连通信连接。该第二连接请求中可以包括该直连通信集群中的目标终端的设备信息,以便该第二终端与该直连通信集群中的目标终端建立第二直连通信连接。
[0179] 可选地,该连接请求,还可以为该直连通信集群中的目标终端发送的,用于触发建立该第二终端与该直连通信集群中的目标终端建立直连通信连接。进一步可选地,根据待传输数据中已传输数据的数据量的不同,该连接请求可以为用于使该第二终端与该目标终端建立第一直连通信连接的请求,还可以为用于使第二终端与该目标终端建立第二直连通信连接的请求。该连接请求中可以包括该目标终端的设备信息。
[0180] 可选地,该第一终端可以确定该待传输数据的数据量。在待传输数据的数据量大于或等于预置的数据量阈值时,第二终端通过与该第一终端建立的第一直连通信连接接收将该待传输数据。在该待传输数据的数据量小于预置的数据量阈值时,第二终端可以通过该第一终端与第二终端建立的第二直连通信连接接收该待传输数据。该第一终端的已传输数据可以为该待传输数据,还可以为该待传输数据中的部分数据。
[0181] 举例来说,若第一终端确定出该待传输数据的数据量为10M,预置的数据量阈值为6M。第一终端可以确定该待传输数据的数据量大于预置的数据量阈值,则第二终端通过与该第一终端建立的第一直连通信连接,如Wi-Fi连接,接收该待传输数据。
[0182] 再举例来说,若该第一终端确定出该待传输数据的数据量为10M,预置的数据量阈值为15M,第一终端可以确定该待传输数据的数据量小于预置的数据量阈值,则第二终端通过与该第一终端建立的第二直连通信连接,如蓝牙连接,接收该待传输数据。
[0183] 本发明实施例中,在步骤S503中,第二终端若接收到第一终端发送的通知消息,则可以作为发送端,通过与该直连通信集群中的目标终端建立的直连通信连接,将从该第一终端接收到的已传输数据发送至该目标终端。
[0184] 其中,该通知消息可以通于通知第二终端作为发送端,并通过与该直连通信集群中的目标终端建立的直连通信连接发送该已传输数据至该目标终端。
[0185] 可见,图5所示的实施例中,第二终端可以与直连通信集群中的目标终端建立直连通信连接,并将从第一终端接收到的已传输数据通过与直连通信集群中的目标终端建立的直连通信连接,发送至该目标终端,达到了由性能较佳的终端继续数据传输的目的,方便了数据的传输。
[0186] 请参阅图7,为本发明实施例提供的一种数据传输装置的结构示意图,其中,该装置可以应用于智能终端,包括但不限于,如手机、平板等便携式移动设备。具体地,该装置可以获取模块701、确定模块702、发送模块703,还可以包括判断模块704。具体地,该装置可以包括:
[0187] 获取模块701,用于在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息。
[0188] 其中,该获取模块701可以设置于处理器中。该第一终端的性能信息包括但不限于第一终端的存储空间、剩余内存、传输速度、剩余电量等信息。该待传输数据可以为第一终端选取的将要传输的音视频文件、图片、文档等数据。
[0189] 确定模块702,用于若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端。
[0190] 其中,该确定模块702可以设置于处理器中。该各个终端的性能信息包括但不限于各个终端的存储空间、剩余内存、剩余电量、传输速度等信息。该各个终端的性能信息可以通过与该直连通信集群中各个终端建立的第二直连通信连接来获取。
[0191] 需要说明的是,包括但不限于以发送指令/请求的形式至该第二终端和/或该直连通信集群中的目标终端的方式,触发该第二终端与该直连通信集群中的目标终端之间建立直连通信连接。其中,指令/通知消息/请求中可以包括不同的内容。
[0192] 本发明实施例中,可以通过发送第一连接请求、第二连接请求来触发建立直连通信连接,并可以携带对应终端的设备信息。
[0193] 发送模块703,用于若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则发送通知消息至所述第二终端或者所述直连通信集群中的目标终端。
[0194] 其中,该通知消息用于通知该第二终端作为发送端,并与该目标终端之间通过建立的直连通信连接传输该已传输数据。该发送模块703可以对应于通信接口,如Wi-Fi模块、蓝牙模块、射频模块等无线通信模块。
[0195] 可选地,该发送模块703,可以在确定模块702确定待传输数据的数据量大于或等于预置的数据量阈值时,通过该第一终端与第二终端建立的第一直连通信连接将该待传输数据发送至第二终端。该发送模块703,可以在确定模块702确定该待传输数据的数据量小于预置的数据量阈值时,可以通过该第一终端与第二终端建立的第二直连通信连接将该待传输数据发送至第二终端。
[0196] 可选地,该确定模块702,还用于确定所述已传输数据的数据量。
[0197] 可选地,该发送模块703,还用于在所述已传输数据的数据量大于或等于预置的数据量阈值时,则发送第一连接请求,所述第一连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;在所述已传输数据的数据量小于预置的数据量阈值时,则发送第二连接请求,所述第二连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。
[0198] 举例来说,若该已传输数据的数据量为10M,预置的数据量阈值为6M。确定模块702可以确定该已传输数据的数据量大于预置的数据量阈值,并通过发送模块703发送第一连接请求。该第一连接请求可以触发该第二终端与直连通信集群中的目标终端建立第一直连通信连接,如Wi-Fi连接。
[0199] 可选地,该确定模块702,还用于确定所述直连通信集群中需要接收所述待传输数据的初始终端。
[0200] 可选地,该发送模块703,还用于向各初始终端发送探测信号;所述探测信号用于探测所述各初始终端与所述第一终端间的信号强度。
[0201] 其中,该信号强度包括但不限于以数字、图标等形式表达出来。该初始终端不包括确定出的第二终端。
[0202] 可选地,该确定模块702,还用于确定出所述各初始终端中与所述第一终端间的信号强度小于预置信号强度阈值的初始终端为目标终端。
[0203] 举例来说,若第一终端为终端1,第二终端为终端2,确定出的初始终端包括终端3、终端4。终端1与终端3之间的信号强度为60,与终端4之间的信号强度为50,若预置信号强度阈值为55,则确定模块702可以确定终端4为目标终端。
[0204] 可选地,判断模块704,用于在所述第一终端的性能信息包括剩余电量时,判断所述剩余电量是否小于预置的第一电量阈值;在所述第一终端的性能信息包括传输速度时,判断所述传输速度是否小于预置的第一速度阈值。其中,该判断模块704可以对应设置在处理器中。
[0205] 可选地,该确定模块702,还用于若所述剩余电量小于所述预置的电量阈值和/或所述传输速度小于所述预置的第一速度阈值,则确定所述第一终端的性能信息小于对应预置的阈值。
[0206] 举例来说,假设第一终端的预置的第一电量阈值为30%、第一速度阈值为0.5M/s。若该第一终端当前的剩余电量为60%,传输速度为1M/s,则确定模块702可以确定第一终端的性能信息不小于对应预置的阈值。若该终端当前的剩余电量低于60%,和/或当前的传输速度小于1M/s,则确定模块702可以确定该第一终端的性能信息小于对应预置的阈值。
[0207] 可选地,确定模块702,具体用于判断所述直连通信集群中各个终端的性能信息中的剩余电量是否大于或者等于预置的第二电量阈值;在确定所述各个终端中包括剩余电量大于或者等于所述预置的第二电量阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。
[0208] 可选地,确定模块702,具体用于判断所述直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;在确定所述各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。
[0209] 可见,图7所示的实施例中,第一终端可以在确定该第一终端的性能信息小于对应预置的阈值时,可以确定出第二终端,在发送至第二终端的已传输数据在待传输数据中的比例超过预置的比例阈值时,可以发送通知消息至该第二终端以用于通知第二终端作为发送以传输该已传输数据至目标终端,实现了在终端可以根据自身性能状态来选取合适的终端,继续数据的传输,保障了数据传输的连续性和完整性,并且可以通过多终端的协作数据传输来提高数据传输的效率。
[0210] 请参阅图8,为本发明再一实施例提供的一种数据传输装置的结构示意图,其中,该装置可以应用于智能终端,包括但不限于,如手机、平板等便携式移动设备。具体地,该装置可以发送模块801,还可以包括接收模块802。具体地,该装置可以包括:
[0211] 发送模块801,用于在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端。
[0212] 其中,发送模块801可以通过该第二终端与第一终端建立的第二直连通信连接,如蓝牙连接,来发送该第二终端的性能信息。
[0213] 可选地,所述发送模块801还用于若接收到所述第一终端发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,将从所述第一终端接收到的已传输数据发送至所述目标终端。
[0214] 可选地,接收模块802,用于接收第一连接请求,所述第一连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接。
[0215] 可选地,所述接收模块802,还用于接收第二连接请求,所述第二连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。
[0216] 具体地,该连接请求可以为第一终端发送的第一连接请求,还可以为第一终端发送的第二连接请求。除此之外,还可以为目标终端发送的用于使第二终端与目标终端间建立第一直连通信连接的请求,还可以是目标终端发送的用于使第二终端与目标终端间建立第而直连通信连接的请求。
[0217] 接收模块802,用于接收所述第一终端发送的已传输数据。
[0218] 可选地,该第一终端确定该待传输数据的数据量。在待传输数据的数据量大于或等于预置的数据量阈值时,第二终端通过该第一终端与第二终端建立的第一直连通信连接接收将该待传输数据。在该待传输数据的数据量小于预置的数据量阈值时,第二终端可以通过该第一终端与第二终端建立的第二直连通信连接接收该待传输数据。
[0219] 具体地,该连接请求为第一终端发送的第一连接请求时,发送模块801可以通过第一直连通信连接已传输数据发送至目标终端。该连接请求为第一终端发送的第二连接请求时,发送模块801可以通过第二直连通信连接将已传输数据发送至目标终端。除此之外,该连接请求为目标终端发送的第一连接请求时,发送模块801可以通过第一直连通信连接将已传输数据发送至目标终端,该连接请求为是目标终端发送的第二连接请求时,发送模块801可以通过第二直连通信连接将已传输数据发送至各目标终端。
[0220] 其中,该发送模块801、接收模块802可以对应于通信接口,如Wi-Fi模块、蓝牙模块、射频模块等无线通信模块。
[0221] 可见,图8所示的实施例中,第二终端可以与直连通信集群中的目标终端建立直连通信连接,并将从第一终端接收到的已传输数据通过直连通信集群中的目标终端建立直连通信连接,发送至直连通信集群中的目标终端,达到了由性能较佳的终端继续数据传输的目的,方便了数据的传输。
[0222] 请参阅图9,图9是本发明实施例提供的一种终端的结构示意图,用于执行如本申请图3实施例中所示的数据传输方法。具体地,如图9所示,本发明实施例的终端可以包括:至少一个处理器1000、存储器3000等组件。可选的,该终端还可以包括至少一个通信接口
2000。其中,这些组件通过一条或多条总线4000进行通信连接。本领域技术人员可以理解,图9中示出的终端的结构并不构成对本发明实施例的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0223] 处理器1000为终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器3000内的程序和/或模块,以及调用存储在存储器3000内的数据以执行终端的各种功能和处理数据。处理器1000可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器1000可以仅包括中央处理器(Central Processing Unit,简称CPU),也可以是CPU、数字信号处理器(Digital Signal Processor,简称DSP)、图形处理器(Graphic Processing Unit,简称GPU)及各种控制芯片的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
[0224] 通信接口2000可以包括多个无线通信模块,如射频模块、Wi-Fi模块、蓝牙模块、超声波模块等,可以用于建立直连通信集群中各个终端间的直连通信连接,包括但不限于实施例中提及的第一直连通信连接、第二直连通信连接。该通信接口2000还可以包括显示屏,用于输出用户界面。
[0225] 存储器3000可用于存储计算机程序以及模块,处理器1000、通信接口2000通过调用存储在存储器3000中的计算机程序以及模块,从而执行终端的各项功能应用以及实现数据处理。存储器3000主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等;数据存储区可存储根据终端的使用所创建的数据等。在本发明实施例中,操作系统可以是Android系统、iOS系统或Windows操作系统等等。
[0226] 具体地,当本发明实施例的移动终端用于执行如本申请图3所示的数据传输方法时,处理器1000调用存储在存储器3000中的计算机程序,用于执行以下步骤:
[0227] 在所述第一终端需要向直连通信集群中的终端传输待传输数据时,获取所述第一终端的性能信息;
[0228] 若确定所述第一终端的性能信息小于对应预置的阈值,则根据所述直连通信集群中各个终端的性能信息确定出第二终端;
[0229] 若确定对所述第二终端的已传输数据在所述待传输数据中的比例超过预置的比例阈值,则通过通信接口2000发送通知消息至所述第二终端或者所述直连通信集群中的目标终端;所述通知消息用于通知所述第二终端作为发送端,并与所述目标终端之间通过建立的直连通信连接传输所述已传输数据。
[0230] 可选地,处理器1000调用存储在存储器3000中的计算机程序,还用于执行以下步骤:
[0231] 确定所述已传输数据的数据量;
[0232] 在所述已传输数据的数据量大于或等于预置的数据量阈值时,则发送第一连接请求,所述第一连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;
[0233] 在所述已传输数据的数据量小于预置的数据量阈值时,则发送第二连接请求,所述第二连接请求用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。
[0234] 可选地,处理器1000调用存储在存储器3000中的计算机程序,还用于执行以下步骤:
[0235] 确定所述直连通信集群中需要接收所述待传输数据的初始终端;
[0236] 向各初始终端发送探测信号;所述探测信号用于探测所述各初始终端与所述第一终端间的信号强度;
[0237] 确定出所述各初始终端中与所述第一终端间的信号强度小于预置信号强度阈值的初始终端为目标终端。
[0238] 可选地,处理器1000调用存储在存储器3000中的计算机程序,还用于执行以下步骤:
[0239] 在所述第一终端的性能信息包括剩余电量时,判断所述剩余电量是否小于预置的第一电量阈值;
[0240] 在所述第一终端的性能信息包括传输速度时,判断所述传输速度是否小于预置的第一速度阈值;
[0241] 若所述剩余电量小于所述预置的第一电量阈值和/或所述传输速度小于所述预置的第一速度阈值,则确定所述第一终端的性能信息小于对应预置的阈值。
[0242] 可选地,处理器1000调用存储在存储器3000中的计算机程序,所述根据所述直连通信集群中各个终端的性能信息确定出第二终端,用于执行以下步骤:
[0243] 判断所述直连通信集群中各个终端的性能信息中的剩余电量是否大于或者等于预置的第二电量阈值;
[0244] 在确定所述各个终端中包括剩余电量大于或者等于所述预置的第二电量阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;
[0245] 选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。
[0246] 可选地,处理器1000调用存储在存储器3000中的计算机程序,所述根据所述直连通信集群中各个终端的性能信息确定出第二终端,用于执行以下步骤:
[0247] 判断所述直连通信集群中各个终端的性能信息中的已接收数据的数据量是否大于或等于预置的数据接收阈值;
[0248] 在确定所述各个终端中包括已接收数据的数据量大于或等于预置的数据接收阈值的多个终端时,判断所述多个终端的性能信息中的传输速度是否大于或者等于预置的第二速度阈值;
[0249] 选取所述多个终端中传输速度大于或者等于所述预置的第二速度阈值的终端作为第二终端。
[0250] 可见,图9所示的实施例中,第一终端可以在确定该第一终端的性能信息小于对应预置的阈值时,确定出第二终端,并在对第二终端的已传输数据在待传输数据中的比例超过预置的比例阈值时,发送通知消息至第二终端,以用于通知该第二终端将该已传输数据发送至目标终端,实现了在终端可以根据自身性能状态来选取合适的终端,继续数据的传输,保障了数据传输的连续性和完整性,并且可以通过多终端的协作数据传输来提高数据传输的效率。
[0251] 请参阅图10,图10是本发明再一实施例提供的一种终端的结构示意图,用于执行如本申请图5实施例中所示的数据传输方法。具体地,如图10所示,本发明实施例的终端可以包括:至少一个处理器1001存储器3001等组件。可选地,该终端还可以包括至少一个通信接口2001、其中,这些组件可以通过一条或多条总线4001进行通信连接。本领域技术人员可以理解,图10中示出的终端的结构并不构成对本发明实施例的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0252] 处理器1001为终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器3001内的程序和/或模块,以及调用存储在存储器3001内的数据以执行终端的各种功能和处理数据。处理器1001可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器1001可以仅包括中央处理器(Central Processing Unit,简称CPU),也可以是CPU、数字信号处理器(Digital Signal Processor,简称DSP)、图形处理器(Graphic Processing Unit,简称GPU)及各种控制芯片的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
[0253] 通信接口2001可以包括多个无线通信模块,如射频模块、Wi-Fi模块、蓝牙模块、超声波模块等,可以用于建立直连通信集群中各个终端间的直连通信连接,包括但不限于实施例中提及的第一直连通信连接、第二直连通信连接。该通信接口2001还可以包括显示屏,用于输出用户界面。
[0254] 存储器3001可用于存储计算机程序以及模块,处理器1001、通信接口2001通过调用存储在存储器3001中的计算机程序以及模块,从而执行终端的各项功能应用以及实现数据处理。存储器3001主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等;数据存储区可存储根据终端的使用所创建的数据等。在本发明实施例中,操作系统可以是Android系统、iOS系统或Windows操作系统等等。
[0255] 具体地,当本发明实施例的移动终端用于执行如本申请图5所示的数据传输方法时,处理器1001调用存储在存储器3001中的计算机程序,用于执行以下步骤:
[0256] 在检测到第一终端发送的用于获取性能信息的请求时,将所述第二终端的性能信息通过与所述第一终端建立的直连通信连接发送至所述第一终端;
[0257] 若通过通信接口2001接收到所述第一终端发送的通知消息,则作为发送端,通过与所述直连通信集群中的目标终端建立的直连通信连接,通过通信接口2001将从所述第一终端接收到的已传输数据发送至所述目标终端。
[0258] 可选地,处理器1001调用存储在存储器3001中的计算机程序,还用于执行以下步骤:
[0259] 接收第一连接请求,所述第一连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第一直连通信连接;
[0260] 或者,接收第二连接请求,所述第二连接请求为所述第一终端和/或目标终端发送的,用于触发建立所述第二终端与所述直连通信集群中的目标终端之间的第二直连通信连接。
[0261] 在一个实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如本申请图3或图5实施例中所描述的数据传输方法。
[0262] 再一个实施例中,还提供了一种计算机程序产品,该计算机程序产品包括了存储有计算机程序的计算机可读存储介质,该计算机程序被处理器执行时实现如本申请图3或图5的实施例中所描述的数据传输方法。
[0263] 可见,图10所示的实施例中,第二终端可以与直连通信集群中的目标终端建立直连通信连接,并将从第一终端接收到的已传输数据通过与直连通信集群中的目标终端建立的直连通信连接,发送至该目标终端,达到了由性能较佳的终端继续数据传输的目的,方便了数据的传输。
[0264] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0265] 在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0266] 所述该作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0267] 另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
[0268] 上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0269] 本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0270] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。