数据传输方法以及装置技术领域
本申请涉及可穿戴设备领域,特别是一种数据传输方法以及装置。
背景技术
可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种
便携式设备。可穿戴设备能够对方便地对用户的数据进行采集,所以,
可以应用于对用户的状态进行监测。在采集完用户的数据后,可穿戴设
备通常还需要将采集到的数据发送的终端等进行分析。现有技术提供了
一种可穿戴设备与终端进行通讯的方法,可穿戴设备根据常用的通讯协
议将数据发送给终端。但是,现有通讯协议的传输可靠性并不能达到
100%,如果受到环境干扰等影响,传输数据失败,则会发生数据的丢失。
发明内容
本申请主要解决的技术问题是提供一种数据传输方法以及装置,能
够防止数据丢失。
本发明提供了一种数据传输方法,包括:接收可穿戴设备发送的数
据长度指令以及接收所述可穿戴设备发送的数据,其中,所述数据长度
指令包括传输数据的长度,所述可穿戴设备发送的数据包括状态字段、
开始时间字段以及持续时间字段,其中,所述状态字段用于表示使用者
的睡眠状态,所述开始时间字段用于表示所述使用者开始所述睡眠状态
的时间,所述持续时间字段用于表示所述使用者所述睡眠状态的持续时
间;判断接收到的所述可穿戴设备发送的数据的长度是否等于传输数据
的长度;如果等于传输数据的长度,向所述可穿戴设备发送删除数据命
令,其中,所述删除数据命令用于指令所述可穿戴设备将已发送的数据
删除;如果不等于传输数据的长度,向所述可穿戴设备发送重发命令。
可选地,接收可穿戴设备发送的数据长度指令之后,判断接收到的
所述可穿戴设备发送的数据的长度是否等于传输数据的长度之前包括:
判断所述数据长度指令的帧头的数据值是否是预设数值,其中,所述预
设数值为字符、字母以及数值中的一种或者多种的组合;如果数据值是
预设数值,则解封装所述数据长度指令以获得所述传输数据的长度,如
果数据值不是预设数值,则向所述可穿戴设备发送所述重发命令。
可选地,所述接收所述可穿戴设备发送的数据之后还包括:对所述
可穿戴设备发送的数据进行“或”的位运算,以对所述可穿戴设备发送
的数据进行解析。
可选地,所述可穿戴设备为智能手环、智能手表和智能眼镜中的任
意一个。
可选地,所述接收可穿戴设备发送的数据长度指令以及接收所述可
穿戴设备发送的数据具体为:通过蓝牙传输协议接收可穿戴设备发送的
数据长度指令以及通过蓝牙传输协议接收所述可穿戴设备发送的数据。
本发明还提供了一种数据传输装置,包括:接收模块用于接收可穿
戴设备发送的数据长度指令以及接收所述可穿戴设备发送的数据,其
中,所述数据长度指令包括传输数据的长度,所述可穿戴设备发送的数
据包括状态字段、开始时间字段以及持续时间字段,其中,所述状态字
段用于表示使用者的睡眠状态,所述开始时间字段用于表示所述使用者
开始所述睡眠状态的时间,所述持续时间字段用于表示所述使用者所述
睡眠状态的持续时间;第一判断模块用于判断接收到的所述可穿戴设备
发送的数据的长度是否等于传输数据的长度;发送模块用于在等于传输
数据的长度时,向所述可穿戴设备发送删除数据命令,其中,所述删除
数据命令用于指令所述可穿戴设备将已发送的数据删除;在不等于传输
数据的长度时,向所述可穿戴设备发送重发命令。
可选地,所述装置还包括第二判断模块以及解封装模块,所述第二
判断模块用于判断所述数据长度指令的帧头的数据值是否是预设数值,
其中,所述预设数值为字符、字母以及数值中的一种或者多种的组合;
所述解封装模块用于在数据值是预设数值,则解封装所述数据长度指令
以获得所述传输数据的长度;所述发送模块还用于在数据值不是预设数
值时,向所述可穿戴设备发送所述重发命令。
可选地,所述装置还包括运算模块,所述运算模块用于对所述可穿
戴设备发送的数据进行“或”的位运算,以对所述可穿戴设备发送的数
据进行解析。
可选地,所述可穿戴设备为智能手环、智能手表和智能眼镜中的任
意一个。
可选地,所述接收模块具体用于通过蓝牙传输协议接收可穿戴设备
发送的数据长度指令以及通过蓝牙传输协议接收所述可穿戴设备发送
的数据。
与现有技术相比,本发明中可穿戴设备通过向终端发送数据长度指
令,并判断可穿戴设备向终端发送的数据的长度是否等于传输数据的长
度,如果等于传输数据的长度,则可以知道没有发送数据丢失,传输成
功,所以,向可穿戴设备发送删除数据命令,将可穿戴设备中已经向终
端发送的数据删除,以节约可穿戴设备的存储空间,如果不等于传输数
据的长度,则可以知道发生了数据丢失,终端向可穿戴设备发送重发命
令,以确保数据能够完整地发送给终端,防止数据丢失。
附图说明
图1是本发明提供的一种数据传输方法的流程图;
图2是本发明提供的一种数据传输装置的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、
接口、技术之类的具体细节,以便透切理解本申请。然而,本领域的技
术人员应当清楚,在没有这些具体细节的其它实施方式中也可以实现本
申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说
明,以免不必要的细节妨碍本申请的描述。
参阅图1,图1是本发明提供的一种数据传输方法的流程图。本发
明的数据传输方法包括:
步骤110:终端接收可穿戴设备发送的数据长度指令以及接收可穿
戴设备发送的数据。
终端可以是智能手机(smartphone)、台式电脑、平板电脑(PAD)、
笔记本电脑(NoteBookComputer)、服务器(server)等等。可穿戴设备
为智能手环、智能手表、智能眼镜等等。数据长度指令是终端和可穿戴
设备之间发送的一个消息,数据长度指令中包括传输数据的长度。可穿
戴设备发送的数据包括状态字段、开始时间字段以及持续时间字段,其
中,状态字段用于表示使用者的睡眠状态,开始时间字段用于表示使用
者开始睡眠状态的时间,持续时间字段用于表示使用者睡眠状态的持续
时间。例如,如表1所示,可穿戴设备发送的数据的结构如表1所示,
表1可穿戴设备发送的数据的结构
其中,状态字段的值为0x01时,用户的状态是深睡,为0x02时,
用户的状态是浅睡,为0x03时,用户的状态是清醒。开始时间字段中
的值则表示开始时间,例如,前八位表示年,接着四位表示月,接着五
位表示日,接着四位表示时,接着六位表示分,最后六位表示秒。持续
时间字段用于表示持续的时间,例如,前四位表示时,接着六位表示分,
最后六位表示秒。
可穿戴设备向终端发送数据长度指令。终端在接收到数据长度指令
后,判断数据长度指令的帧头的数据值是否是预设数值,其中,预设数
值为字符、字母以及数值中的一种或者多种的组合。例如:预设数值为
33xx等等。如果数据值是预设数值,则解封装数据长度指令以获得传输
数据的长度,可穿戴设备还按照通讯协议向终端发送数据,终端则相应
接收可穿戴设备发送的数据。如果数据值不是预设数值,则向可穿戴设
备发送重发命令。
可以理解的是,在数据值是预设数值时,可穿戴设备可以同时向终
端发送数据长度指令以及数据,也可以先向终端发送数据长度指令,再
向终端发送数据,甚至,先向终端发送数据,再向终端发送数据长度指
令。
步骤120:终端判断接收到的可穿戴设备发送的数据的长度是否等
于传输数据的长度。
终端根据可穿戴设备发送的数据的长度判断可穿戴设备发送的数
据的长度是否等于传输数据的长度。如果等于传输数据的长度,意味着
可穿戴设备向终端发送的数据一个不漏地被终端接收,可以进入步骤
130,如果不等于传输数据的长度,意味着可穿戴设备向终端发送的数
据发生了丢失,进入步骤140。
步骤130:终端向可穿戴设备发送删除数据命令。
终端在确定可穿戴设备向终端发送的数据一个不漏地被终端接收
后,终端可通过蓝牙传输协议向可穿戴设备发送删除数据命令,其中,
删除数据命令用于指令可穿戴设备将已发送的数据删除。可穿戴设备在
接收到删除数据命令之后,将可穿戴设备中已经向终端发送的数据删
除,以节约可穿戴设备的存储空间。
此外,终端还可以对可穿戴设备发送的数据进行“或”的位运算,
以对可穿戴设备发送的数据进行解析,例如,需要对终端发送的状态字
段的值代表的含义为深睡的总持续时间进行统计时,可根据数值直接进
行“或”的位运算,以节约计算时间。例如,第一次深睡状态的持续时
间为11分钟,第二次深睡的时间为22分钟,可以转变为“00010001”
与“00100010”通过“或”的位运算,从而得到结果“00110011”。
步骤140:终端向可穿戴设备发送重发命令。
终端在确定可穿戴设备向终端发送的数据发生丢失后,可通过蓝牙
传输协议向可穿戴设备发送重发命令。可穿戴设备接收到重发命令后,
将之前的数据重新发送一遍,以确保可穿戴设备向终端发送的数据都能
被准确接收。
与现有技术相比,本发明中可穿戴设备通过向终端发送数据长度指
令,并判断可穿戴设备向终端发送的数据的长度是否等于传输数据的长
度,如果等于传输数据的长度,则可以知道没有发送数据丢失,传输成
功,所以,向可穿戴设备发送删除数据命令,将可穿戴设备中已经向终
端发送的数据删除,以节约可穿戴设备的存储空间,如果不等于传输数
据的长度,则可以知道发生了数据丢失,终端向可穿戴设备发送重发命
令,以确保数据能够完整地发送给终端,防止数据丢失。
与现有技术将数据从内存中取出,然后计算,完成后再存入内存的
方式相比,本发明中终端对可穿戴设备发送的数据进行“或”这种位运
算,可以直接对内存进行操作,大大提高了运算的效率。
参阅图2,图2是本发明提供的一种数据传输装置的结构示意图。
本实施方式的数据传输装置包括:接收模块302、第一判断模块303、
第二判断模块304、解封装模块305、发送模块306以及运算模块307。
接收模块302用于接收可穿戴设备发送的数据长度指令以及接收所
述可穿戴设备发送的数据,其中,所述数据长度指令包括传输数据的长
度,所述可穿戴设备发送的数据包括状态字段、开始时间字段以及持续
时间字段,其中,所述状态字段用于表示使用者的睡眠状态,所述开始
时间字段用于表示所述使用者开始所述睡眠状态的时间,所述持续时间
字段用于表示所述使用者所述睡眠状态的持续时间。
第一判断模块303用于判断接收到的所述可穿戴设备发送的数据的
长度是否等于传输数据的长度;
发送模块用306于在等于传输数据的长度时,向所述可穿戴设备发
送删除数据命令,其中,所述删除数据命令用于指令所述可穿戴设备将
已发送的数据删除;在不等于传输数据的长度时,向所述可穿戴设备发
送重发命令。
可选地,所述第二判断模块304用于判断所述数据长度指令的帧头
的数据值是否是预设数值,其中,所述预设数值为字符、字母以及数值
中的一种或者多种的组合;所述解封装模块305用于在数据值是预设数
值,则解封装所述数据长度指令以获得所述传输数据的长度;所述发送
模块306还用于在数据值不是预设数值时,向所述可穿戴设备发送所述
重发命令。
可选地,所述运算模块307用于对所述可穿戴设备发送的数据进行
“或”的位运算,以对所述可穿戴设备发送的数据进行解析。
可选地,所述可穿戴设备为智能手环、智能手表和智能眼镜中的任
意一个。
可选地,所述接收模块302具体用于通过蓝牙传输协议接收可穿戴
设备发送的数据长度指令以及通过蓝牙传输协议接收所述可穿戴设备
发送的数据。
本发明的数据传输装置与图1所示的数据传输方法可一一对应,具
体请参阅图1以及相关描述,此处不再展开描述。
与现有技术相比,本发明中可穿戴设备通过向终端发送数据长度指
令,并判断可穿戴设备向终端发送的数据的长度是否等于传输数据的长
度,如果等于传输数据的长度,则可以知道没有发送数据丢失,传输成
功,所以,向可穿戴设备发送删除数据命令,将可穿戴设备中已经向终
端发送的数据删除,以节约可穿戴设备的存储空间,如果不等于传输数
据的长度,则可以知道发生了数据丢失,终端向可穿戴设备发送重发命
令,以确保数据能够完整地发送给终端,防止数据丢失。
与现有技术将数据从内存中取出,然后计算,完成后再存入内存的
方式相比,本发明中终端对可穿戴设备发送的数据进行“或”这种位运
算,可以直接对内存进行操作,大大提高了运算的效率。
在本申请所提供的几个实施方式中,应该理解到,所揭露的系统,
装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施
方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑
功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可
以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是
通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械
或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开
的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于
一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选
择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理
单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元
集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可
以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产
品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样
的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或
者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机
软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设
备(可以是个人计算机,终端,或者网络设备等)或处理器(processor)
执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介
质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、
随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各
种可以存储程序代码的介质。