数据的更新方法及装置、存储介质、电子装置与流程



1.本发明涉及通信领域,具体而言,涉及一种数据的更新方法及装置、存储介质、电子装置。


背景技术:



2.当今,万物互联的时代,家里的很多小家电像温湿度计、体重秤、体脂秤也都可以作为智能家电接入到手机app中,进而可以手机app上可以接收到设备的最新数据,展示历史数据等等。但这些设备往往都是电池供电,并且考虑到低功耗、成本等等原因,都是通过加入蓝牙芯片,让数据通过蓝牙的形式广播出来。并且,在家里有网关代理设备的情况下,这些通过蓝牙的形式广播出来的数据可以通过两条通路上报给手机:方式一、通过蓝牙广播的形式,手机直接搜索蓝牙广播。方式二、网关设备收到蓝牙广播数据,上报给云端,云端推送给手机。即同一包数据,可以通过两条通路上报给手机。当出现设备短时间内广播了两条数据,数据1(旧数据),数据2(新数据),手机通过广播收到了数据2,这时候云端又推送了数据1,将会出现在不区分数据新、旧数据情况下,数据1会覆盖掉数据2。
3.此外,当网关代理设备不存在时,将无法与云端通信,无法得到时间戳,并且由于蓝牙广播数据大小就非常有限,用于区分新旧数据的sn码通常使用8字节的长整型字段标识,使得在蓝牙广播数据中添加入sn码后导致业务数据根本不够用,使得业务数据的传输受到影响。
4.针对相关技术中,蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题,尚未提出有效的解决方案。


技术实现要素:



5.本发明实施例提供了一种数据的更新方法及装置、存储介质、电子装置,以至少解决相关技术中,蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题。
6.根据本发明的一个实施例,提供了一种数据的更新方法,包括:获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近一次从蓝牙设备接收到的数据信息;根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息。
7.在一个示例性的实施例中,根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,包括:在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息;在差值大于预设阈值的情况下,确定根据第一数据信息更新第二数据信息。
8.在一个示例性的实施例中,在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较之前,上述方法还包括:获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识;在第一设备标识与第二设备标识相同的情况下,确定第一设备标识对应的蓝牙设备的广播频率阈值以及第一序列号递增的最大值;根据所述广播频率阈值以及所述最大值更新所述预设算法中的回滚参数,其中,所述回滚参数用于指示对所述第一序列号进行回滚更新的最大值。
9.在一个示例性的实施例中,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息,包括:在第一序列号和第二序列号的第一差值大于第一阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差小于广播频率阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差大于广播频率阈值的情况下,删除第一数据信息。
10.在一个示例性的实施例中,获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识之后,上述方法还包括:在第一设备标识与第二设备标识不相同的情况下,重新获取蓝牙设备在终端中存储的第二数据信息;在终端不存在第二数据信息的情况下,发出提示信息,其中,提示信息用于提示是否建立存储文件。
11.在一个示例性的实施例中,根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息之前,上述方法还包括:确定终端与蓝牙设备之间进行第一数据信息推送的延迟时间,其中,延迟时间用于指示在网络波动较大的情况下,所述第一数据信息从终端发出到物联网云端接收的推送时间与预设标准推送时间的差值;根据延迟时间确定预设阈值。
12.根据本发明的另一个实施例,还提供了一种数据的更新装置,包括:获取模块,用于获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;差值模块,用于确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近一次从蓝牙设备接收到的数据信息;确定模块,用于根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息。
13.在一个示例性的实施例中,上述确定模块,还用于在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息;在差值大于预设阈值的情况下,确定根据第一数据信息更新第二数据信息。
14.在一个示例性的实施例中,上述确定模块还包括:获取单元,用于获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识;确定单元,用于在第一设备标识与第二设备标识相同的情况下,确定第一设备标识对应的蓝牙设备的广播频率阈值以及第一序列号递增的最大值;根据所述广播频率阈值以及所述最大值更新所述预设算法中的回滚参数,其中,所述回滚参数用于指示对所述第一序列号进行回滚更新的最大值。
15.在一个示例性的实施例中,上述确定模块,还用于在第一序列号和第二序列号的
第一差值大于第一阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差小于广播频率阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差大于广播频率阈值的情况下,删除第一数据信息。
16.在一个示例性的实施例中,上述确定模块还包括:提示单元,用于在第一设备标识与第二设备标识不相同的情况下,重新获取蓝牙设备在终端中存储的第二数据信息;在终端不存在第二数据信息的情况下,发出提示信息,其中,提示信息用于提示是否建立存储文件。
17.在一个示例性的实施例中,上述装置还包括:时间模块,用于确定终端与蓝牙设备之间进行第一数据信息推送的延迟时间,其中,延迟时间用于指示在网络波动较大的情况下,所述第一数据信息从终端发出到物联网云端接收的推送时间与预设标准推送时间的差值;根据延迟时间确定预设阈值。
18.根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,所述计算机可读的存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
19.根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
20.通过本发明,获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近一次从蓝牙设备接收到的数据信息;根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,即当终端对蓝牙设备发出的数据信息进行获取时,终端记录对应的获取时间戳,并与终端中存储的历史数据信息比较,以初步判断所述第一数据信息是否为新数据,解决了相关技术中蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题,通过终端记录时间戳以及确定数据信息中的单一字节的序列号,对多通路上报的数据信息进行新旧判断,实现使用最小的资对蓝牙广播数据中的数据信息进行去重,提高了终端收到数据信息的时效性,提升了用户体验。
附图说明
21.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
22.图1是本发明实施例的一种数据的更新方法的移动终端的硬件结构框图;
23.图2是根据本发明实施例的数据的更新方法的流程图;
24.图3为根据本发明可选实施例的蓝牙设备上传数据的交互流程示意图;
25.图4是根据本发明实施例的一种数据的更新装置的结构框图(一);
26.图5是根据本发明实施例的一种数据的更新装置的结构框图(二)。
具体实施方式
27.下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
28.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
29.本技术实施例所提供的方法实施例可以在计算机终端、移动终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种数据的更新方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
30.存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据的更新方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
31.传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(network interface controller,简称为nic),其可通过与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
32.在本实施例中提供了一种数据的更新方法,应用于上述移动终端,图2是根据本发明实施例的数据的更新方法的流程图,该流程包括如下步骤:
33.步骤s202,获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;
34.步骤s204,确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;
35.步骤s206,根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。
36.通过上述技术方案,获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近
一次从蓝牙设备接收到的数据信息;根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,即当终端对蓝牙设备发出的数据信息进行获取时,终端记录对应的获取时间戳,并与终端中存储的历史数据信息比较,以初步判断所述第一数据信息是否为新数据,解决了相关技术中蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题,通过终端记录时间戳以及确定数据信息中的单一字节的序列号,对多通路上报的数据信息进行新旧判断,实现使用最小的资对蓝牙广播数据中的数据信息进行去重,提高了终端收到数据信息的时效性,提升了用户体验。
37.在一个示例性的实施例中,根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,包括:在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息;在差值大于预设阈值的情况下,确定根据第一数据信息更新第二数据信息。
38.例如,手机端每次收到蓝牙设备上传的数据后,记录下当前上传的时间戳,并用当前的时间戳跟手机中缓存数据中该蓝牙设备在当前上传数据的前一次上传数据的时间戳来比较,并确定前后时间戳的差值与设定预设阈值的大小关系,在差值大于预设阈值的情况下,认定当前上传的数据是新数据,否则通过比较对应的序列号进行再次判断。
39.在一个示例性的实施例中,在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较之前,上述方法还包括:获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识;在第一设备标识与第二设备标识相同的情况下,确定第一设备标识对应的蓝牙设备的广播频率阈值以及第一序列号递增的最大值;根据所述广播频率阈值以及所述最大值更新所述预设算法中的回滚参数,其中,所述回滚参数用于指示对所述第一序列号进行回滚更新的最大值。
40.换句话说,根据广播频率阈值以及第一序列号递增的最大值可以确定出第一序列号进行数据重复的回滚参数,根据回滚参数可以确定第一序列号在规定大小的字节中实现更新的次数以及更新的频率的最大值,进而确保在不同时间点数据信息对应的序列号不同,当超出预定时间周期后,才会出现携带相同第一序列号的不同内容信息的数据信息,并进一步根据预设算法对第一数据信息和第二数据信息比较,确定当前的第一数据信息是否为新的数据信息。
41.例如,当通过设备标识确定所述设备为体重秤,则可以根据对应的标准表确定出体重秤的广播频率为250毫秒1次,那么在预设阈值30秒内会广播120次,sn会变化120,广播频率阈值可以设置为120。此外,当体重秤用于指示序列号的sn字段的大小为1个字节时,sn的取值范围只能是0-255,当广播256次,sn就用尽了,再广播的时候需要回滚到0,重新开始,此时,sn递增的最大值为255。
42.在一个示例性的实施例中,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息,包括:在第一序列号和第二序列号的第一差值大于第一阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差小于广播频率阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差大于广播频
率阈值的情况下,删除第一数据信息。
43.例如,设:第一序列号为x,第二序列号为y,第一序列号递增的最大值的取值是z,用于指示蓝牙设备的广播频率阈值为n,
44.1)x-y》0;收到的第一数据信息为新数据。
45.2)x-y《0并且z-|x-y|《n;收到的第一数据信息为新数据。
46.在一个示例性的实施例中,获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识之后,上述方法还包括:在第一设备标识与第二设备标识不相同的情况下,重新获取蓝牙设备在终端中存储的第二数据信息;在终端不存在第二数据信息的情况下,发出提示信息,其中,提示信息用于提示是否建立存储文件。
47.在一个示例性的实施例中,根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息之前,上述方法还包括:确定终端与蓝牙设备之间进行第一数据信息推送的延迟时间,其中,延迟时间用于指示在网络波动较大的情况下,所述第一数据信息从终端发出到物联网云端接收的推送时间与预设标准推送时间的差值;根据延迟时间确定预设阈值。
48.为了更好的理解上述数据的更新方法的过程,以下结合可选实施例对上述数据的更新方法流程进行说明,但不用于限定本发明实施例的技术方案。
49.作为一种可选的实施方式,在上报的数据中,通常会增加时间戳或者使用一个8字节long类型(长整型)的sn(serial number,sn码,简称sn)字段,通过时间戳或者sn来判断新旧数据。但是蓝牙广播数据中资源非常有限,业务数据会占用非常多数据。无法给sn字段分配过大的空间。
50.针对上述应用场景,本发明可选实施例提出一种数据判断新旧的方法,通过在手机端设置两个条件规则来实现判断数据的新旧,包括:
51.第一规则:时间过滤用于指示手机端每次收到蓝牙设备上传的数据后,记录下当前上传的时间戳,并用当前的时间戳跟手机中缓存数据中该蓝牙设备在当前上传数据的前一次上传数据的时间戳来比较,并确定前后时间戳的差值与设定预设阈值的大小关系,在差值大于预设阈值的情况下,认定当前上传的数据是新数据,否则通过第二规则进行再次判断。
52.例如,将预设阈值设置为30秒,30秒之内的数据利用第二个规则进行判断。30秒之外的,直接当成新数据来处理。
53.需要说明的是,30秒这个数字是通过模拟网络波动较大,云端正常推送数据延迟的一个超时时间定的,也可以根据测试情况进行调整。
54.第二规则,1个字节的sn字段前后比较,在蓝牙设备的广播数据中,增加1个字节的sn字段,每次广播数据的时候sn+1。由于sn字段的大小只有1个字节。也就是说sn的取值范围只能是0-255。当广播256次,sn就用尽了,再广播的时候需要回滚到0,重新开始。手机端通过sn判断数据新旧的时候,需要通过预设算法,就算sn回滚到0了,根据一个阈值也能判断出数据的新旧。
55.可选的,预设算法包括:当前收到的数据sn和手机缓存的数据sn的差值大于零的情况下,确定数据是新数据;当前收到的数据sn和手机缓存的数据sn的差值小于零,且sn取值的最大值与差值的差小于用于指示蓝牙设备的广播频率的阈值的情况下,确定数据是新
数据;当不符合上述情况时,确定数据是旧数据。
56.例如,设:手机收到的数据sn为x,手机缓存的数据sn为y,sn的最大取值是z,用于指示蓝牙设备的广播频率的阈值为n,
57.1)x-y》0;收到的数据为新数据。
58.2)x-y《0并且z-|x-y|《n;收到的数据为新数据。
59.需要说明的是,不同的蓝牙设备阈值也不一样。阈值主要根据蓝牙设备的广播频率来计算,并且由于蓝牙设备的广播数据包含业务数据,因此,可以快速确定出蓝牙设备的设备信息;
60.例如,温湿度计,通常的广播频率为1秒1次,那么30秒内将广播30次,也就是说sn会变化30次,因此阈值可以设置为30。
61.体重秤,广播频率为250毫秒1次,那么30秒内会广播120次,sn会变化120,广播频率阈值可以设置为120。
62.可选的,本发明可选实施例提供了一种对于温湿度计上传数据的新旧判断条件,具体的,当sn递增,收到温湿度计上传数据的sn大于手机端缓存数据中温湿度计数据的sn,就认为是新数据。当sn出现回滚的时候,sn最大值z=256,阈值n=30,手机端缓存数据y=255,新收到的数据x=3,是符合x-y《0并且z-|x-y|《n的判断条件,因此,确定此时温湿度计上传数据是新数据。
63.作为一中可选的实施方式,如图3所示为蓝牙设备上传数据的交互流程示意图,具体如下:
64.步骤1、蓝牙设备存在数据,进行蓝牙数据广播;
65.步骤2、网关收到数据,将对应收到的数据信息发送给云端
66.步骤3、云端在收到数据信息后推送给手机app;
67.步骤4、手机能收到蓝牙设备广播出来的数据,还有从云端推送过来的数据,由于云端推送的数据可能因为网络等原因有延迟,所以手机app需要根据上述第一规则和第二规则判断当前收到的数据是否是最新的。
68.步骤5、蓝牙设备进行蓝牙数据广播,手机app直接搜索到。
69.本发明可选实施例,通过手机端记录蓝牙设备上传数据的时间戳,并通过预设算法对数据中的一个字节的sn进行运算判断,进而解决智能家居中这些小蓝牙设备的多通路数据上报造成的数据冗余、时序紊乱的问题,用最小的资源,解决数据新旧判断的问题,保障用户能看到最新的数据,即使用最小的资源加上设置的算法,解决蓝牙广播数据的去重,判断新旧的问题,提升了蓝牙广播数据的去重效率。
70.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
71.在本实施例中还提供了一种数据的更新装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的
软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
72.图4是根据本发明实施例的一种数据的更新装置的结构框图;如图4所示,包括:
73.获取模块42,用于获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;
74.差值模块44,用于确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;
75.确定模块46,用于根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。
76.通过上述技术方案,获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近一次从蓝牙设备接收到的数据信息;根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,即当终端对蓝牙设备发出的数据信息进行获取时,终端记录对应的获取时间戳,并与终端中存储的历史数据信息比较,以初步判断所述第一数据信息是否为新数据,解决了相关技术中蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题,通过终端记录时间戳以及确定数据信息中的单一字节的序列号,对多通路上报的数据信息进行新旧判断,实现使用最小的资对蓝牙广播数据中的数据信息。
77.在一个示例性的实施例中,上述确定模块,还用于在差值小于预设阈值的情况下,根据预设算法对第一数据信息中的第一序列号和第二数据信息中的第二序列号进行比较,以确定是否根据第一数据信息更新第二数据信息;在差值大于预设阈值的情况下,确定根据第一数据信息更新第二数据信息。
78.例如,手机端每次收到蓝牙设备上传的数据后,记录下当前上传的时间戳,并用当前的时间戳跟手机中缓存数据中该蓝牙设备在当前上传数据的前一次上传数据的时间戳来比较,并确定前后时间戳的差值与设定预设阈值的大小关系,在差值大于预设阈值的情况下,认定当前上传的数据是新数据,否则通过比较对应的序列号进行再次判断。
79.在一个示例性的实施例中,上述确定模块还包括:获取单元,用于获取第一数据信息携带的第一设备标识与第二数据信息携带的第二设备标识;确定单元,用于在第一设备标识与第二设备标识相同的情况下,确定第一设备标识对应的蓝牙设备的广播频率阈值以及第一序列号递增的最大值;根据所述广播频率阈值以及所述最大值更新所述预设算法中的回滚参数,其中,所述回滚参数用于指示对所述第一序列号进行回滚更新的最大值。
80.换句话说,根据广播频率阈值以及第一序列号递增的最大值可以确定出第一序列号进行数据重复的回滚参数,根据回滚参数可以确定第一序列号在规定大小的字节中实现更新的次数以及更新的频率的最大值,进而确保在不同时间点数据信息对应的序列号不同,当超出预定时间周期后,才会出现携带相同第一序列号的不同内容信息的数据信息,并
进一步根据预设算法对第一数据信息和第二数据信息比较,确定当前的第一数据信息是否为新的数据信息。
81.例如,当通过设备标识确定所述设备为体重秤,则可以根据对应的标准表确定出体重秤的广播频率为250毫秒1次,那么在预设阈值30秒内会广播120次,sn会变化120,广播频率阈值可以设置为120。此外,当体重秤用于指示序列号的sn字段的大小为1个字节时,sn的取值范围只能是0-255,当广播256次,sn就用尽了,再广播的时候需要回滚到0,重新开始,此时,sn递增的最大值为255。
82.在一个示例性的实施例中,上述确定模块,还用于在第一序列号和第二序列号的第一差值大于第一阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差小于广播频率阈值的情况下,确定根据第一数据信息更新第二数据信息;在第一序列号和第二序列号的第一差值小于第一阈值,且最大值与第一差值的差大于广播频率阈值的情况下,删除第一数据信息。
83.例如,设:第一序列号为x,第二序列号为y,第一序列号递增的最大值的取值是z,用于指示蓝牙设备的广播频率阈值为n,
84.1)x-y》0;收到的第一数据信息为新数据。
85.2)x-y《0并且z-|x-y|《n;收到的第一数据信息为新数据。
86.在一个示例性的实施例中,上述确定模块还包括:提示单元,用于在第一设备标识与第二设备标识不相同的情况下,重新获取蓝牙设备在终端中存储的第二数据信息;在终端不存在第二数据信息的情况下,发出提示信息,其中,提示信息用于提示是否建立存储文件。
87.图5是根据本发明实施例的另一种数据的更新装置的结构框图;如图5所示,除了包含图4中已存在的模块外,还包括:时间模块45。
88.在一个示例性的实施例中,上述装置还包括:时间模块,用于确定终端与蓝牙设备之间进行第一数据信息推送的延迟时间,其中,延迟时间用于指示在网络波动较大的情况下,所述第一数据信息从终端发出到物联网云端接收的推送时间与预设标准推送时间的差值;根据延迟时间确定预设阈值。
89.本发明的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。
90.在一个示例性实施例中,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
91.s1,获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;
92.s2,确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;s3,根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。
93.在一个示例性实施例中,在本实施例中,上述存储介质可以包括但不限于:u盘、只
读存储器(read-only memory,简称为rom)、随机存取存储器(random access memory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
94.本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
95.在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
96.在一个示例性实施例中,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
97.s1,获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;
98.s2,确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;
99.s3,根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。
100.在一个示例性实施例中,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
101.显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,在一个示例性实施例中,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
102.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:


1.一种数据的更新方法,其特征在于,包括:获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。2.根据权利要求1所述的数据的更新方法,其特征在于,根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息,包括:在所述差值小于预设阈值的情况下,根据预设算法对所述第一数据信息中的第一序列号和所述第二数据信息中的第二序列号进行比较,以确定是否根据所述第一数据信息更新所述第二数据信息;在所述差值大于预设阈值的情况下,确定根据所述第一数据信息更新所述第二数据信息。3.根据权利要求2所述的数据的更新方法,其特征在于,在所述差值小于预设阈值的情况下,根据预设算法对所述第一数据信息中的第一序列号和所述第二数据信息中的第二序列号进行比较之前,所述方法还包括:获取所述第一数据信息携带的第一设备标识与所述第二数据信息携带的第二设备标识;在所述第一设备标识与所述第二设备标识相同的情况下,确定所述第一设备标识对应的蓝牙设备的广播频率阈值以及所述第一序列号递增的最大值;根据所述广播频率阈值以及所述最大值更新所述预设算法中的回滚参数,其中,所述回滚参数用于指示对所述第一序列号进行回滚更新的最大值。4.根据权利要求3所述的数据的更新方法,其特征在于,根据预设算法对所述第一数据信息中的第一序列号和所述第二数据信息中的第二序列号进行比较,以确定是否根据所述第一数据信息更新所述第二数据信息,包括:在所述第一序列号和所述第二序列号的第一差值大于第一阈值的情况下,确定根据所述第一数据信息更新所述第二数据信息;在所述第一序列号和所述第二序列号的第一差值小于所述第一阈值,且所述最大值与所述第一差值的差小于所述广播频率阈值的情况下,确定根据所述第一数据信息更新所述第二数据信息;在所述第一序列号和所述第二序列号的第一差值小于所述第一阈值,且所述最大值与所述第一差值的差大于所述广播频率阈值的情况下,删除所述第一数据信息。5.根据权利要求3所述的数据的更新方法,其特征在于,获取所述第一数据信息携带的第一设备标识与所述第二数据信息携带的第二设备标识之后,所述方法还包括:在所述第一设备标识与所述第二设备标识不相同的情况下,重新获取所述蓝牙设备在终端中存储的第二数据信息;
在所述终端不存在所述第二数据信息的情况下,发出提示信息,其中,所述提示信息用于提示是否建立存储文件。6.根据权利要求1所述的数据的更新方法,其特征在于,根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息之前,所述方法还包括:确定所述终端与所述蓝牙设备之间进行所述第一数据信息推送的延迟时间,其中,所述延迟时间用于指示在网络波动较大的情况下,所述第一数据信息从终端发出到物联网云端接收的推送时间与预设标准推送时间的差值;根据所述延迟时间确定所述预设阈值。7.一种数据的更新装置,其特征在于,包括:获取模块,用于获取蓝牙设备传输的第一数据信息,并记录获取所述第一数据信息的第一时间戳,其中,所述第一数据信息包括:第一序列号,所述第一序列号用于指示所述蓝牙设备对应的所述第一数据信息的上传次数;差值模块,用于确定所述第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,所述第二数据信息为所述终端上存储的,且在接收到第一数据信息之前,最近一次从所述蓝牙设备接收到的数据信息;确定模块,用于根据所述差值与预设阈值的大小关系,确定是否根据所述第一数据信息更新所述第二数据信息。8.根据权利要求7所述的数据的更新装置,其特征在于,所述确定模块,还用于在所述差值小于预设阈值的情况下,根据预设算法对所述第一数据信息中的第一序列号和所述第二数据信息中的第二序列号进行比较,以确定是否根据所述第一数据信息更新所述第二数据信息;在所述差值大于预设阈值的情况下,确定根据所述第一数据信息更新所述第二数据信息。9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至6任一项中所述的方法。10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。

技术总结


本发明公开了一种数据的更新方法及装置、存储介质、电子装置,其中,上述方法包括:获取蓝牙设备传输的第一数据信息,并记录获取第一数据信息的第一时间戳,其中,第一数据信息包括:第一序列号,第一序列号用于指示蓝牙设备对应的第一数据信息的上传次数;确定第一时间戳和终端上存储的第二数据信息对应的第二时间戳的差值,其中,第二数据信息为终端上存储的,且在接收到第一数据信息之前,最近一次从蓝牙设备接收到的数据信息;根据差值与预设阈值的大小关系,确定是否根据第一数据信息更新第二数据信息,解决了相关技术中蓝牙设备的广播数据大小有限,无法在业务数据不受影响的情况下,实现新旧数据的判定等问题。实现新旧数据的判定等问题。实现新旧数据的判定等问题。


技术研发人员:

李可

受保护的技术使用者:

海尔智家股份有限公司

技术研发日:

2021.08.26

技术公布日:

2023/3/2

本文发布于:2024-09-23 16:18:47,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/63637.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   所述   信息   蓝牙
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议