CN116467143A - 状态的更新方法及装置 - Google Patents
状态的更新方法及装置 Download PDFInfo
- Publication number
- CN116467143A CN116467143A CN202310376570.XA CN202310376570A CN116467143A CN 116467143 A CN116467143 A CN 116467143A CN 202310376570 A CN202310376570 A CN 202310376570A CN 116467143 A CN116467143 A CN 116467143A
- Authority
- CN
- China
- Prior art keywords
- target
- target application
- time
- server
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000008859 change Effects 0.000 claims abstract description 21
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241001417527 Pempheridae Species 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72454—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72406—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Automation & Control Theory (AREA)
- Environmental & Geological Engineering (AREA)
- Mathematical Physics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种状态的更新方法及装置,其中,该方法包括:在目标应用从第i次位于目标终端的后台切换到第j次位于目标终端的前台,且目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,目标应用从服务端获取目标缓存列表,其中,目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,第一时刻是目标应用第i次位于目标终端的后台的时间达到预设时间的时刻,第二时刻是目标应用第i次位于目标终端的后台的结束时刻;目标应用根据目标缓存列表,对目标应用中设备的状态进行更新。通过本发明,解决了相关技术中存在的应用从后台切换到前台时展示的设备状态与实际设备状态不一致的问题。
Description
技术领域
本发明实施例涉及智能家居控制及显示领域,具体而言,涉及一种状态的更新方法及装置。
背景技术
近年来,随着信息化技术的快速发展,如今智能家居设备已广泛应用于日常家庭中,比如智能灯泡、插座、开关面板等。配套的手机应用目标应用,也能对智能家居设备进行控制、展示设备的状态。由于智能手机的限制,应用目标应用从前台退到后台一段时间后,就会处于被系统挂起状态。此时,应用目标应用无法获取设备的最新状态,用户将应用目标应用从后台再次切换至前台进入应用目标应用后展示的状态可能与设备实际状态不一致,即不是设备的最新状态。因此,现有技术中存在应用展示的设备状态与实际设备状态不一致的问题。
针对相关技术中存在的应用从后台切换到前台时展示的设备状态与实际设备状态不一致的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种状态的更新方法及装置,以至少解决相关技术中存在的应用从后台切换到前台时展示的设备状态与实际设备状态不一致的问题。
根据本发明的一个实施例,提供了一种状态的更新方法,包括:在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,所述目标应用从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1。
根据本发明的又一个实施例,还提供了一种状态的更新装置,包括:
获取模块,用于在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1;
更新模块,用于根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,目标应用在从目标终端的后台切换到前台时,通过从服务端获取的目标缓存列表获取到在目标应用在第一时刻和第二时刻内的状态发生变化的设备,目标应用从而对目标应用中设备的状态进行更新,从而使目标应用中的显示的设备的状态是设备的实际状态(或最新状态)保持一致的,解决了相关技术中存在的应用从后台切换到前台时展示的设备状态与实际设备状态不一致的问题。
附图说明
图1是本发明实施例的状态的更新方法的移动终端硬件结构框图;
图2是根据本发明实施例的状态的更新方法的流程图;
图3是根据本发明实施例中的目标应用显示设备状态的示意图;
图4是根据本发明实施例的目标应用的状态切换的示意图;
图5是根据本发明实施例的目标应用中设备状态更新后的示意图;
图6是根据本发明实施例的服务端与目标应用交互的示意图一;
图7是根据本发明实施例的服务端与目标应用交互的示意图二;
图8是根据本发明实施例的服务端与目标应用交互的示意图三;
图9是根据本发明实施例的服务端与目标应用交互的示意图四;
图10是根据本发明实施例的状态的更新装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的状态的更新方法的移动终端硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的状态的更新方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种状态的更新方法,图2是根据本发明实施例的状态的更新方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,所述目标应用从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1;
步骤S204,所述目标应用根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
在本实施例中,目标终端是安装有目标应用的智能终端,可以是手机、平板等;设备是与目标应用中的用户帐号具有关联关系的智能设备,可以是智能家居设备,例如智能插座、智能灯泡等,用户可以通过目标应用中向设备发送控制指令,以控制设备进行操作,且与用户帐号具有关联关系的设备状态在目标应用中进行显示,图3是根据本发明实施例中的目标应用显示设备状态的示意图,用户在目标应用中登录目标帐号后,目标应用刷新与目标帐号设备列表的状态后,初始状态展示如图3所示,与目标帐号关联的设备有扫地机器人、蓝牙网关、门磁、煤气探测器、蓝牙灯泡、蓝牙插座、蓝牙锁,在初始状态展示时,扫地机器人、蓝牙网关、门磁、煤气探测器、蓝牙灯泡、蓝牙插座、蓝牙锁的状态为开启,在显示界面除了显示了设备的开关机状态,还可以显示其他情况的状态,例如,还显示煤气探测器处于静音状态。
目标应用在目标终端上对应有三种状态:关闭状态、位于前台、位于后台,其中,位于前台和位于后台目标应用均是开启状态。用户在开启应用时,目标应用从关闭状态变为位于前台,此时被记做第1次位于目标终端的前台,图4是根据本发明实施例的目标应用的状态切换的示意图,如图4所示,以时间轴为线,在时间轴上方表示目标应用位于目标终端的后台,在时间轴下方表示目标应用位于目标终端的前台,目标应用开启时,目标应用第1次位于目标终端的前台,此时,将目标应用切换到目标终端的后台时目标应用第1次位于目标终端的后台,若再将目标应用切换到目标终端的前台时,目标应用第2次位于目标终端的前台,即目标应用从第i次位于目标终端的后台切换到第j次位于目标终端的前台,此时i=1,j=2。图4中的第三时刻对应于目标应用第j-1次位于目标终端的前台的结束时刻,也是目标应用第i次位于所述目标终端的后台的开始时刻;第一时刻与第三时刻之间的时间间隔为预设时间,且第三时刻在第一时刻之前,可选的从目标应用第i次位于所述目标终端的后台的开始时刻(第三时刻)计时器开始计时,在计时器的计数值到达预设时间的时刻即为第一时刻,即第一时刻是第i次位于目标终端的时间到达预设时间的时刻。
需要说明的是,j大于i,且j=i+1。
第二时刻对应于目标应用第i次位于所述目标终端的后台的结束时刻,也可以是目标应用第j次位于目标终端的前台的开始时刻。
由于目标终端的限制,目标应用在位于目标终端的后台的时间超过预设时间之后,会与服务端断开连接,在断开连接的时间段内,目标应用无法获取设备的最新状态,即目标应用在第一时刻至第二时刻无法获取设备的最新状态,如果有设备在第一时刻至第二时刻内状态发生了变化,在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台情况下,目标应用对目标应用中的状态发生变化了的设备的状态进行更新,以第一设备为例,第一设备在第一时刻至第二时刻内的状态发生了变化,目标应用在从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台情况下,目标应用对目标应用中第一设备的设备状态进行更新。
服务端通过目标缓存列表记录在第一时刻至第二时刻内状态发生变化的设备的设备标识,目标应用从服务端获取目标缓存列表,从而获取在在第一时刻至第二时刻内状态发生变化的设备的设备标识,目标应用在获知到哪些设备在第一时刻至第二时刻内状态发生了变化后,对目标应用中的对应的设备的状态进行更新,以使目标应用中显示的各个设备的状态与设备的实际状态(或最新状态)保持一致。
图5是根据本发明实施例的目标应用中设备状态更新后的示意图,如图5所示,在第一时刻至第二时刻内门磁和蓝牙灯泡的状态由开启变为关闭,目标应用在从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台的情况下,在目标应用中更新门磁和蓝牙灯泡的状态,更新之后目标应用中的展示页面由如图3所示变为如图5所示。
通过上述步骤,目标应用在从目标终端的后台切换到前台,且目标应用在后台的时间大于预设时间时,通过从服务端获取的目标缓存列表获取到在目标应用在第一时刻和第二时刻内的状态发生变化的设备,目标应用从而对目标应用中设备的状态进行更新,从而使目标应用中的显示的设备的状态是设备的实际状态(或最新状态)保持一致的,解决了相关技术中存在的应用从后台切换到前台时展示的设备状态与实际设备状态不一致的问题。
同时由于服务端记录了在第一时刻和第二时刻内状态发生变化的设备,因此,目标应用对目标应用中的设备进行更新时,不需要对所有设备的状态进行更新,仅仅对状态发生变化了的设备的状态进行更新即可,因此,在保证了目标应用展示的设备状态与实际设备状态一致的基础上还提高了刷新效率。
在一个可选的实施例中,在所述目标应用从服务端获取目标缓存列表之前,所述方法还包括:在所述第一时刻所述目标应用向所述服务端发送第一标识,其中,所述第一标识用于指示所述目标应用第i次位于所述目标终端的后台的时间超过所述预设时间;所述服务端根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化。
在一个可选的实施例中,在所述服务端根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化之后,所述方法还包括:在所述第二时刻,所述目标应用向所述服务端发送第二标识,其中,所述第二标识用于指示所述目标应用从所述目标终端的后台切换到所述目标终端的前台;所述服务端在所述第二时刻结束监测所述设备集群中的各个设备的状态是否发生变化。
在本实施例中,服务端通过监测设备集群中各个设备的状态是否发生变化,从而记录在第一时刻至第二时刻内发生了变化的设备。将第一时刻至第二时刻对应的时间段记做目标时间段。
为了使服务端中的目标缓存列表中记录的设备标识均是在目标时间段内状态发生变化的设备,避免在目标时间段以外状态发生变化的设备也被记录在目标缓存列表中,服务端在第一时刻开始监测,在第二时刻结束监测,监测是指结束监测所述设备集群中的各个设备的状态是否发生变化,因此,服务端仅在目标时间段内进行监测,在目标时间段以外的时间不进行监测,则不会有在目标时间段以外状态发生变化的设备也被记录在目标缓存列表中。
在第一时刻目标应用向服务端发送第一标识,第一标识用于指示目标应用第i次位于所述目标终端的后台的时间超过所述预设时间,服务端在接收到第一标识的情况下,开始监测设备集群中的各个设备的状态是否发生变化,即服务端能够在第一时刻开始监测,图6是根据本发明实施例的服务端与目标应用交互的示意图一,如图6所示,目标应用在退到后台的时间达到预设时间的时刻(第一时刻),向服务端发送第一标识,服务端开启设备状态缓存监听,即开始监测设备集群中的各个设备的状态是否发生变化,并更新目标缓存列表,即将监测到的状态发生变化的设备的设备标识添加到目标缓存列表中。
可选的,服务端监测状态发生变化的设备,并将其设备标识添加至目标缓存列表中包括以下至少之一:
用户在一个设备上操作了该设备,该设备主动向服务端上报操作后的状态至服务端,服务端将该设备的身份标识加入缓存或将该设备上报的状态与上一次上报的状态比较,在两个状态不一样的情况下服务端将该设备的身份标识加入缓存;
用户在另一台终端上操作了一个设备,该设备主动向服务端上报操作后的状态至服务端,服务端将该设备的身份标识加入缓存或将该设备上报的状态与上一次上报的状态比较,在两个状态不一样的情况下服务端将该设备的身份标识加入缓存。
可选的,在目标缓存列表中相同的设备标识仅记录一次,即在第一设备已经在目标缓存列表中记录的情况下,再次监测到第一设备的状态发生变化时,不需要再次记录第一设备的设备标识。
在第二时刻目标应用向服务端发送第二标识,第二标识用于指示目标应用从目标终端的后台切换到目标终端的前台,服务端在接收到第二标识的情况下,结束监测设备集群中的各个设备的状态是否发生变化,即服务端能够在第二时刻结束监测,图7是根据本发明实施例的服务端与目标应用交互的示意图二,如图7所示,目标应用从后台恢复前台时(第二时刻),向服务端发送第二标识,服务端关闭设备状态缓存监听,即结束监测设备集群中的各个设备的状态是否发生变化,并确定缓存数据,将目标缓存列表发送给目标应用,由目标应用根据目标缓存列表对中设备的状态进行更新。
在一个可选的实施例中,所述方法还包括:所述服务端在所述第一时刻至所述第二时刻内监测到所述设备集群中的第一设备的状态发生了变化的情况下,所述服务端将所述第一设备的设备标识添加到所述目标缓存列表;在所述第二时刻所述服务端将所述目标缓存列表发送至所述目标应用。
在本实施例中,在第一时刻至第二时刻内,服务端一直在监测设备集群中的设备的状态是否发生了变化,如果监测到某一设备(例如第一设备)的状态发生变化的情况下,将该设备的设备标识(例如第一设备标识)添加到目标缓存列表中,即在第二时刻目标缓存列表中记录了第一时刻至第二时刻内所有状态发生了变化的设备的设备标识,服务端在第二时刻将目标缓存列表发送给目标应用,以目标应用根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
在一个可选的实施例中,在所述第二时刻所述服务端将所述目标缓存列表发送至所述目标应用之后,所述方法还包括:所述服务端将所述目标缓存列表清空。
在本实施例中,在第二时刻将目标缓存列表发送至目标应用之后,服务端将目标缓存列表清空,因此,在下一次目标应用位于后台的时间超过预设时间后的时间段(记做第二时间段)内监测到的状态发生变化的设备的设备标识添加到目标缓存列表中,因为在第二时刻之后将目标缓存列表清空,因此,在第二时间段时目标缓存列表中记录的设备标识全是在第二时间段记录的,不包含在第一时刻至第二时刻内记录的设备标识,因此,避免了下一次对目标应用中设备的状态进行更新对设备进行重复更新。
在一个可选的实施例中,所述方法还包括:在所述目标终端中首次打开所述目标应用的情况下,所述目标应用向服务端发送指示消息;所述服务端根据所述指示消息建立所述目标缓存列表。
在一个可选的实施例中,所述方法还包括:在所述目标终端中关闭所述目标应用的情况下,所述目标应用向服务端发送第二指示消息;所述服务端根据所述第二指示消息清空并删除所述目标缓存列表。
在本实施例中,目标应用在首次打开目标应用的情况下,向服务端发送指示第一指示消息,服务端根据第一指示消息在服务端中建立目标缓存列表,在目标应用关闭目标应用的情况下,向服务端发送第二指示信息,服务端根据第二指示信息清空并删除目标缓存列表。
即服务端在目标应用开启时建立目标缓存列表,在目标应用关闭时,删除目标缓存列表,即服务端在目标应用关闭时间内,服务端没有目标缓存列表,节省了服务端的缓存空间。
图8是根据本发明实施例的服务端与目标应用交互的示意图三,如图8所示,目标应用在首次打开时,向服务端发送第一指示消息,服务端建立目标缓存列表,此时目标缓存列表为空。
图9是根据本发明实施例的服务端与目标应用交互的示意图四,如图9所示,目标应用在关闭时,向服务端发送第二指示消息,服务端删除目标缓存列表。
在一个可选的实施例中,所述目标应用根据所述目标缓存列表,对所述目标应用中设备的状态进行更新,包括:在所述目标缓存列表中记录了第一设备的设备标识的情况下,所述目标应用在所述服务端获取所述第一设备的最新状态,其中,所述第一设备的最新状态由所述第一设备在状态发生改变时上报给所述服务端;所述目标应用将所述第一设备的状态更新为所述最新状态。
在本实施例中,目标缓存列表记录了在第一时刻至第二时刻所有状态发生变化的设备的设备标识,即在目标应用对目标应用中设备的状态进行更新时,只需要获取目标缓存列表记录的设备标识对应的设备的最新状态,根据目标应用中的这些指定设备(在第一时刻至第二时刻所有状态发生变化的设备)的状态更新为最新状态。
如果第一设备被记录在目标缓存列表中,则获取第一设备的最新状态,将目标应用中的第一设备的状态更新为第一设备的最新状态。
在一个可选的实施例中,所述目标应用在所述服务端获取所述第一设备的最新状态,包括:所述目标应用向所述服务端发送第一请求,其中,所述第一请求用于请求所述服务端将所述第一设备的最新状态发送至所述目标应用;所述服务端根据所述第一请求向所述目标应用发送的所述第一设备的最新状态。
在本实施例中,在目标缓存列表中记录了第一设备的设备标识的情况下,需要获取第一设备的最新状态,目标应用可以通过向服务端发送第一请求,以请求服务端将存储的第一设备的最新状态发送给目标应用。服务端在接收到第一请求后,在服务端缓存的第一设备的最新状态发送给目标应用。
可选的,目标应用还可以通过以下方式获取第一设备的最新状态:目标应用向第一设备发送第二请求,第二请求用于请求第一设备将所述第一设备的最新状态发送至所述目标应用。
可选的,目标应用还可以通过以下方式获取第一设备的最新状态:服务端在发送目标缓存列表之前,服务端根据缓存列表确定第一缓存列表,其中,第一缓存列表中记录了一个或多个设备的最新状态,第一缓存列表中记录的最新状态与目标缓存列表中记录的设备标识一一对应。在目标缓存列表中记录了第一设备的设备标识的情况下,在第一缓存列表中获取第一设备的最新状态信息。
显然,上述所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。
下面结合实施例对本发明进行具体说明:
在目标终端中的目标应用登录的目标帐号下有多台设备(对应于上述设备集群):设备D1、设备D2、设备D3、设备D4、...设备Dn(Dn以设备序列号进行唯一身份标识),在目标应用中展示设备集群中各个设备的缩略信息及状态信息(如灯泡开关状态、扫地机清扫状态等)。在目标应用登录目标帐号后,初始化MQTT(Message Queuing TelemetryTransport,消息队列遥测传输协议)服务,从服务端主动获取设备列表并展示每个设备的最新状态。
1、目标应用在目标应用与服务端建立MQTT服务连接或断开MQTT服务连接时,根据前后台状态携带不同的标识:(1)目标应用初次打开后,初始化MQTT服务,目标应用与服务端建立MQTT服务连接时发送连接标识new-connect(对应于第一指示消息)至服务端;(2)目标应用退到后台预设时间时,主动断开与服务端的MQTT服务连接,并发送连接标识background-disconnect(对应于第一标识)至服务端;(3)目标应用退到后台预设时间以上、并恢复前台后,重新建立MQTT服务连接,并发送后台恢复重连标识background-reconnect(对应于第二标识)至服务端;(4)目标应用被关闭时,主动断开MQTT服务,并发送断开连接标识disconnect(对应于第二指示消息)至服务端。
2、服务端为目标用户建立设备变化缓存列表,用于记录哪些设备发生了状态变化,对应目标应用发送的不同连接标识,对目标缓存列表进行不同的操作处理,具体如下:
(1)服务端在接收到new-connect的连接标识时,创建用户级的设备变化缓存列表,内容为空,即[];
(2)服务端在接收到background-disconnect的连接标识时,开启设备状态缓存监听,开始在目标缓存列表中记录发生状态改变的设备的设备标识,例如:
在设备D1上操作了设备D1的开关,设备D1主动向服务端上报操作后的状态至服务端,服务端将设备D1的身份标识加入缓存或将设备D1上报的状态与设备D1上一次上报的状态比较,在两个状态不一样的情况下服务端将设备D1的身份标识加入缓存,此时服务端记录的缓存列表为[D1];
用户在另一台终端上操作了设备D2的开关,设备D2主动向服务端上报操作后的状态至服务端,服务端将设备D2的身份标识加入缓存,此时服务端记录的缓存列表为[D1,D2];
当后续设备D1、设备D2再次发生状态改变时,不需要再次在目标缓存列表中再次记录,服务端记录的目标缓存列表仍为[D1,D2];
(3)服务端在接收到background-reconnect的连接标识时,关闭设备状态缓存监听,并将目标缓存列表通过MQTT通道通知给目标应用。目标应用在收到目标缓存列表后,向服务端请求目标缓存列表中记录的设备的最新状态,并更新目标应用中的展示界面。即目标应用从长时间位于后台恢复到前后台,只需要刷新指定的设备信息,而不需要进行全量设备更新。
(4)服务端在接收到disconnect的标识时,清空缓存列表,并删除。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种状态的更新装置,图10是根据本发明实施例的状态的更新装置的结构框图,应用于目标应用,如图10所示,该装置包括:
获取模块1002,用于在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1;
更新模块1004,用于根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
在一个可选的实施例中,上述装置还用于在所述目标应用从服务端获取目标缓存列表之前,在所述第一时刻向所述服务端发送第一标识,其中,所述第一标识用于指示所述目标应用第i次位于所述目标终端的后台的时间超过所述预设时间,所述服务端被设置为根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化。
在一个可选的实施例中,上述装置还用于在所述服务端根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化之后,在所述第二时刻,向所述服务端发送第二标识,其中,所述第二标识用于指示所述目标应用从所述目标终端的后台切换到所述目标终端的前台;所述服务端被设置为在所述第二时刻结束监测所述设备集群中的各个设备的状态是否发生变化。
在一个可选的实施例中,所述服务端被设置为在所述第一时刻至所述第二时刻内监测到所述设备集群中的第一设备的状态发生了变化的情况下,将所述第一设备的设备标识添加到所述目标缓存列表;在所述第二时刻将所述目标缓存列表发送至所述目标应用。
在一个可选的实施例中,所述服务端被设置为在所述第二时刻所述服务端将所述目标缓存列表发送至所述目标应用之后,将所述目标缓存列表清空。
在一个可选的实施例中,上述装置还用于,在所述目标终端中首次打开所述目标应用的情况下,向服务端发送第一指示消息,其中,所述服务端被设置为根据所述第一指示消息建立所述目标缓存列表。
在一个可选的实施例中,上述装置还用于通过以下方式根据所述目标缓存列表,对所述目标应用中设备的状态进行更新:在所述目标缓存列表中记录了第一设备的设备标识的情况下,在所述服务端获取所述第一设备的最新状态,其中,所述第一设备的最新状态由所述第一设备在状态发生改变时上报给所述服务端;将所述第一设备的状态更新为所述最新状态。
在一个可选的实施例中,上述装置还用于通过以下方式在所述服务端获取所述第一设备的最新状态:向所述服务端发送第一请求,其中,所述第一请求用于请求所述服务端将所述第一设备的最新状态发送至所述目标应用,所述服务端被设置为根据所述第一请求向所述目标应用发送的所述第一设备的最新状态。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种状态的更新方法,其特征在于,包括:
在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端的前台,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的情况下,所述目标应用从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1;
所述目标应用根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
2.根据权利要求1所述的方法,其特征在于,在所述目标应用从服务端获取目标缓存列表之前,所述方法还包括:
在所述第一时刻所述目标应用向所述服务端发送第一标识,其中,所述第一标识用于指示所述目标应用第i次位于所述目标终端的后台的时间超过所述预设时间;
所述服务端根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化。
3.根据权利要求2所述的方法,其特征在于,在所述服务端根据所述第一标识从所述第一时刻开始监测设备集群中的各个设备的状态是否发生变化之后,所述方法还包括:
在所述第二时刻,所述目标应用向所述服务端发送第二标识,其中,所述第二标识用于指示所述目标应用从所述目标终端的后台切换到所述目标终端的前台;
所述服务端在所述第二时刻结束监测所述设备集群中的各个设备的状态是否发生变化。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述服务端在所述第一时刻至所述第二时刻内监测到所述设备集群中的第一设备的状态发生了变化的情况下,所述服务端将所述第一设备的设备标识添加到所述目标缓存列表;
在所述第二时刻所述服务端将所述目标缓存列表发送至所述目标应用。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标终端中首次打开所述目标应用的情况下,所述目标应用向服务端发送第一指示消息;
所述服务端根据所述第一指示消息建立所述目标缓存列表。
6.根据权利要求1中所述的方法,其特征在于,所述目标应用根据所述目标缓存列表,对所述目标应用中设备的状态进行更新,包括:
在所述目标缓存列表中记录了第一设备的设备标识的情况下,所述目标应用在所述服务端获取所述第一设备的最新状态,其中,所述第一设备的最新状态由所述第一设备在状态发生改变时上报给所述服务端;
所述目标应用将所述第一设备的状态更新为所述最新状态。
7.根据权利要求6所述的方法,其特征在于,所述目标应用在所述服务端获取所述第一设备的最新状态,包括:
所述目标应用向所述服务端发送第一请求,其中,所述第一请求用于请求所述服务端将所述第一设备的最新状态发送至所述目标应用;
所述服务端根据所述第一请求向所述目标应用发送的所述第一设备的最新状态。
8.一种状态的更新装置,其特征在于,应用于目标应用,包括:
获取模块,用于在目标应用从第i次位于目标终端的后台切换到第j次位于所述目标终端,且所述目标应用第i次位于目标终端的后台的时间大于预设时间的前台情况下,从服务端获取目标缓存列表,其中,所述目标缓存列表中记录了第一时刻至第二时刻内状态发生变化的设备的设备标识,所述第一时刻是所述目标应用第i次位于所述目标终端的后台的时间达到所述预设时间的时刻,所述第二时刻是所述目标应用第i次位于所述目标终端的后台的结束时刻,i大于或等于1,j大于1;
更新模块,用于根据所述目标缓存列表,对所述目标应用中设备的状态进行更新。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310376570.XA CN116467143A (zh) | 2023-04-10 | 2023-04-10 | 状态的更新方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310376570.XA CN116467143A (zh) | 2023-04-10 | 2023-04-10 | 状态的更新方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116467143A true CN116467143A (zh) | 2023-07-21 |
Family
ID=87172875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310376570.XA Pending CN116467143A (zh) | 2023-04-10 | 2023-04-10 | 状态的更新方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116467143A (zh) |
-
2023
- 2023-04-10 CN CN202310376570.XA patent/CN116467143A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102377817B (zh) | 连接管理系统以及用于链接连接管理服务器的方法 | |
CN105093943A (zh) | 智能家居系统及其数据处理和后台控制服务方法 | |
CN204719436U (zh) | 能够实现后台控制服务的智能家居系统 | |
CN110557327A (zh) | 利用近程通信技术可直接与用户终端联动的独立型IoT网关 | |
CN106993043B (zh) | 基于代理的数据通信系统和方法 | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
EP3101872A1 (en) | Load balancing server for forwarding prioritized traffic from and to one or more prioritized auto-configuration servers | |
US11984974B2 (en) | Method and device for transmitting data, system, and storage medium | |
CN110875857B (zh) | 断网状态的上报方法、装置及系统 | |
CN114598735B (zh) | 数据处理方法和系统 | |
CN103856793A (zh) | 媒体内容缓冲 | |
WO2006019499A2 (en) | Integrated management of a wireless network | |
CN113518125A (zh) | 离线数据的上传方法及系统、存储介质、电子装置 | |
CN112217649A (zh) | 终端设备管理方法、服务器及终端设备 | |
CN112492030B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN111050356B (zh) | 数据传输的处理方法及装置、存储介质、电子装置 | |
CN116467143A (zh) | 状态的更新方法及装置 | |
CN109660428B (zh) | 高可用性集群系统 | |
CN108696855B (zh) | 一种信息管理方法、会话管理功能和移动性管理功能 | |
WO2016161680A1 (zh) | 流量数据更新方法、流量数据更新系统和终端 | |
CN110958148B (zh) | 一种分布式接入设备的部署系统 | |
CN112437146B (zh) | 一种设备状态同步方法、装置及系统 | |
CN109962967A (zh) | 基于增量订阅的数据同步方法 | |
CN114422573A (zh) | 报文发送方法及装置、存储介质及电子装置 | |
CN112491583A (zh) | 一种数据采集和分析的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |