一种数据传输方法和电子设备与流程

文档序号:35283615发布日期:2023-09-01 04:07阅读:38来源:国知局
一种数据传输方法和电子设备与流程

本技术实施例涉及移动通信领域,尤其涉及一种数据传输方法和电子设备。


背景技术:

1、电子设备(例如手机)通常具备一些可以与可穿戴设备进行交互的应用,这些应用可以在电子设备内独立行使其功能,但在可穿戴设备中则需要通过蓝牙链路协同电子设备行使其功能。对于此类应用,可以称其搭载在电子设备端的应用以及搭载在可穿戴设备端的应用互为伴侣应用(companion app)。

2、随着可穿戴设备的智能化发展,可穿戴设备搭载通信基带(modem)芯片逐渐成为主流趋势,这样,可穿戴设备具有独立通信功能。然而,目前应用市场中的伴侣应用并未基于可穿戴设备的独立通信功能进行改进,可穿戴设备与电子设备的伴侣应用之间依旧仅能通过蓝牙链路互连,当可穿戴设备与电子设备的伴侣应用之间的蓝牙链路断开,可穿戴设备处于独立通信场景时,可穿戴设备端的伴侣应用将无法使用。


技术实现思路

1、本技术实施例提供了一种数据传输方法和电子设备,可以使外接设备中仅能够与中心设备通过直连链路连接的伴侣应用,在直连链路断开后,也与独立通信的外接设备不间断通信。

2、第一方面,本技术提供了一种数据传输方法,应用于外接设备。包括:获取第一数据,第一数据是第一应用发送给第二应用的数据,第一应用是外接设备中的应用,第二应用是中心设备中的应用,第一应用和第二应用互为伴侣应用,外接设备与中心设备之间包括第一链路,第一链路为外接设备与中心设备之间的直连链路;若第一链路未断开,通过第一链路向中心设备发送第一数据;若第一链路已断开,通过第二链路向中转服务器发送第一数据,以使中转服务器将第一数据转发至中心设备,第二链路是外接设备与中心设备之间通过中转服务器建立的链路。

3、本技术示出的数据传输方法,可以在第一应用与第二应用之间用于传输第一数据的第一链路断开时,通过第二链路将第一数据发送至中心设备,这样,可以使外接设备中仅能够与中心设备通过直连链路连接的伴侣应用,在直连链路断开后,也能在独立通信的外接设备上不间断使用。

4、在一种可选择的实现方式中,若第一链路已断开,通过第二链路接收第二数据,第二数据是第二应用发送给第一应用的数据,第二数据由中心设备发送给中转服务器,并由中转服务器转发至外接设备。采用本实施方式,可以在第一应用与第二应用之间用于传输第二数据的第一链路断开时,通过第二链路将第二数据发送至外接设备,这样,可以使外接设备中仅能够与中心设备通过直连链路连接的伴侣应用,在直连链路断开后,也能在独立通信的外接设备上不间断使用。

5、在一种可选择的实现方式中,外接设备包括第一蓝牙协议栈和第一代理控制器;通过第二链路向中转服务器发送第一数据,包括:第一应用将第一数据发送至第一蓝牙协议栈;第一蓝牙协议栈对第一数据进行打包,得到第一报文;第一蓝牙协议栈将第一报文发送至第一代理控制器;第一代理控制器将第一报文发送至中转服务器。采用本实施方式,外接设备通过第一蓝牙协议栈将第一数据打包,以使第一数据符合可以通过中转服务器传输的封装格式。

6、在一种可选择的实现方式中,通过第二链路接收第二数据,包括:第一代理控制器接收中转服务器发送的第一推送消息,第一推送消息用于指示中转服务器接收到第二报文;第一代理控制器响应于第一推送消息,从中转服务器获取第二报文;第一代理控制器将第二报文发送至第一蓝牙协议栈;第一蓝牙协议栈将第二报文进行解包,得到第二数据;第一蓝牙协议栈将第二数据发送至第一应用。采用本实施方式,第一蓝牙协议栈可以对经中转服务器传输的第二报文进行解包,以使第一应用在第一链路断开的情况下也可以获取到第二数据。

7、在一种可选择的实现方式中,第一蓝牙协议栈包括第一应用层和第一传输层;第一蓝牙协议栈对第一数据进行打包,得到第一报文之前,还包括:判断第一蓝牙协议栈匹配的硬件类型,硬件类型包括:物联网iot设备、手环设备、运动手表设备、智能手表设备的至少一种;确定硬件类型对应的第一数据的打包方式,打包方式包括:通过第一传输层对第一数据进行打包、同时通过第一应用层和第一传输层对第一数据进行打包、以及通过第一应用层对第一数据进行打包。采用本实施方式,第一蓝牙协议栈可以根据硬件类型选取不同的打包方式,以进一步根据打包方式选取合适的第二链路进行数据传输。

8、在一种可选择的实现方式中,通过第一传输层对第一数据进行打包,包括:第一传输层将第一数据封装成第一报文的至少一个数据帧,其中,每个数据帧包括:开始标识sof字段、长度length标识字段、控制control标识字段、序列号fsn标识字段、业务层数据载荷payload、校验checksum字段。采用本实施方式,第一蓝牙协议栈可以根据硬件类型选取不同的打包方式,以进一步根据打包方式选取合适的第二链路进行数据传输。

9、在一种可选择的实现方式中,同时通过第一应用层和第一传输层对第一数据进行打包,包括:第一应用层将第一数据封装成至少一个第一应用层数据包,其中,每个第一应用层数据包包括:服务标识service id、命令标识command id以及至少一个封装tlv字段;第一传输层将至少一个第一应用层数据包封装成第一报文的至少一个数据帧,其中,每个数据帧包括:开始标识sof字段、长度length标识字段、控制control标识字段、序列号fsn标识字段、业务层数据载荷payload、校验checksum字段。采用本实施方式,第一蓝牙协议栈可以根据硬件类型选取不同的打包方式,以进一步根据打包方式选取合适的第二链路进行数据传输。

10、在一种可选择的实现方式中,第一传输层将至少一个第一应用层数据包封装成第一报文的至少一个数据帧之前,还包括:判断第一应用层数据包的长度是否超过第一传输层的最大帧长度mfs;如果第一应用层数据包的长度超过第一传输层的最大帧长度mfs,将第一应用层数据包以最大帧长度mfs进行拆分。采用本实施方式,第一蓝牙协议栈可以根据传输层对应的第二链路的承载能力的限制对第一应用层数据包进行拆分,便于进行数据传输。

11、在一种可选择的实现方式中,通过第一应用层对第一数据进行打包,包括:第一应用层将第一数据封装成第一报文的至少一个第一应用层数据包,其中,每个第一应用层数据包包括:服务标识service id、命令标识command id以及至少一个封装tlv字段。采用本实施方式,第一蓝牙协议栈可以根据硬件类型选取不同的打包方式,以进一步根据打包方式选取合适的第二链路进行数据传输。

12、在一种可选择的实现方式中,通过第二链路向中转服务器发送第一数据之前,还包括:获取第一应用的身份信息;根据第一应用的身份信息确定第一应用对应的第二链路的类型,第二链路的类型包括:经典蓝牙点对点传输br链路、经典蓝牙点对多点edr链路、低功耗蓝牙ble链路、移动数据链路、无线保真wi-fi链路的至少一种,确定第一应用的身份信息对应的第二链路的频率,不同身份信息对应的第二链路的频率不同。采用本实施方式,可以选取合适的第二链路类型对第一数据进行传输,这样,可以保证每个第二链路的安全性和私有性,在传输不同应用的数据时,可以保证不同应用对应的第二链路是隔离的。

13、在一种可选择的实现方式中,根据第一应用的身份信息确定第一应用对应的第二链路的类型之后,还包括:获取第一数据的数据类型,数据类型包括短码流数据以及长码流数据;确定第一数据的数据类型对应的第二链路的频率,不同数据类型对应的第二链路的频率不同。采用本实施方式,可以根据第一数据的数据类型选取合适的第二链路的频率对第一数据进行传输,这样,可以保证每个频率的第二链路可以行使不同的功能,在传输不同数据类型的第一数据时,可以保证不同数据类型对应的第二链路是隔离的。

14、第二方面,本技术还提供了一种数据传输方法,应用于中心设备,包括:获取第二数据,第二数据是第二应用发送给第一应用的数据,第一应用是外接设备中的应用,第二应用是中心设备中的应用,第一应用和第二应用互为伴侣应用,外接设备与中心设备之间包括第一链路,第一链路为外接设备与电子设备之间的直连链路;若第一链路未断开,通过第一链路向外接设备发送第二数据;若第一链路已断开,通过第二链路向中转服务器发送第二数据,以使中转服务器将第二数据转发至外接设备,第二链路是中心设备与外接设备之间通过中转服务器建立的链路。

15、本技术示出的数据传输方法,可以在第一应用与第二应用之间用于传输第二数据的第一链路断开时,通过第二链路将第二数据发送至外接设备,这样,可以使外接设备中仅能够与中心设备通过直连链路连接的伴侣应用,在直连链路断开后,也能在独立通信的外接设备上不间断使用。

16、在一种可选择的实现方式中,还包括:若第一链路已断开,通过第二链路接收第一数据,第一数据是第一应用发送给第二应用的数据,第一数据由外接设备发送给中转服务器,并由中转服务器转发至中心设备。采用本实施方式,可以在第一应用与第二应用之间用于传输第一数据的第一链路断开时,通过第二链路将第一数据发送至外接设备,这样,可以使外接设备中仅能够与中心设备通过直连链路连接的伴侣应用,在直连链路断开后,也能在独立通信的外接设备上不间断使用。

17、在一种可选择的实现方式中,中心设备包括第一代理应用;通过第二链路向中转服务器发送第二数据,包括:第二应用将第二数据发送至第一代理应用;第一代理应用对第二数据进行打包,得到第二报文;第一代理应用将第二报文发送至中转服务器。采用本实施方式,中心设备通过第一代理应用将第二数据打包,以使第二数据符合可以通过中转服务器传输的封装格式。

18、在一种可选择的实现方式中,通过第二链路接收第一数据,包括:第一代理应用接收中转服务器发送的第二推送消息,第二推送消息用于指示中转服务器接收到第一报文;第一代理应用响应于第二推送消息,从中转服务器中获取第一报文;第一代理应用将第一报文进行解包,得到第一数据;第一代理应用将第一数据发送至第二应用。采用本实施方式,第一代理应用可以对经中转服务器传输的第一报文进行解包,以使第二应用在第一链路断开的情况下也可以获取到第二数据。

19、在一种可选择的实现方式中,第一代理应用中包括第二蓝牙协议栈,第二蓝牙协议栈包括第二应用层和第二传输层;第一代理应用对第二数据进行打包,包括:第二应用层将第二数据封装成至少一个第二应用层数据包,其中,每个第二应用层数据包包括:服务标识service id、命令标识command id以及至少一个封装tlv字段;第二传输层将至少一个第二应用层数据包封装成第二报文的至少一个数据帧,其中,每个数据帧包括:开始标识sof字段、长度length标识字段、控制control标识字段、序列号fsn标识字段、业务层数据载荷payload、校验checksum字段。采用本实施方式,第二蓝牙协议栈可以对第二数据封装为第二报文,以使第二报文可以在第二链路进行数据传输。

20、在一种可选择的实现方式中,第二传输层将至少一个第二应用层数据包封装成第二报文的至少一个数据帧之前,还包括:判断第二应用层数据包的长度是否超过第二传输层的最大帧长度mfs;如果第二应用层数据包的长度超过第二传输层的最大帧长度mfs,将第二应用层数据包以最大帧长度mfs进行拆分。采用本实施方式,第二蓝牙协议栈可以根据传输层对应的第二链路的承载能力的限制对第二应用层数据包进行拆分,便于进行数据传输。

21、在一种可选择的实现方式中,通过第二链路向中转服务器发送第二数据之前,还包括:获取第二应用的身份信息;根据第二应用的身份信息确定第二应用对应的第二链路的类型,第二链路的类型包括:经典蓝牙点对点传输br链路、经典蓝牙点对多点edr链路、低功耗蓝牙ble链路、移动数据链路、无线保真wi-fi链路的至少一种,确定第二应用的身份信息对应的第二链路的频率,不同的身份信息对应的第二链路的频率不同。采用本实施方式,可以选取合适的第二链路类型对第二数据进行传输,这样,可以保证每个第二链路的安全性和私有性,在传输不同应用的数据时,可以保证不同应用对应的第二链路是隔离的。

22、在一种可选择的实现方式中,根据第二应用的身份信息确定第二应用对应的第二链路的类型之后,还包括:获取第二数据的数据类型,数据类型包括短码流数据以及长码流数据;确定第二数据的数据类型对应的第二链路的频率,不同数据类型对应的第二链路的频率不同。采用本实施方式,可以根据第二数据的数据类型选取合适的第二链路的频率对第一数据进行传输,这样,可以保证每个频率的第二链路可以行使不同的功能,在传输不同类型的第二数据时,可以保证不同数据类型对应的第二链路是隔离的。

23、第三方面,本技术还提供一种电子设备,包括:处理器和存储器;存储器存储有程序指令,当程序指令被处理器执行时,使得电子设备作为外接设备和/或中心设备执行如上述第一方面、第二方面及各种实现方式中的数据传输方法。

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