我已经实现了一个家庭监测和控制系统,包含一些运动探测器和温度传感器,它们连接到一台迷你PC作为服务器。在这台PC上,我有一个.NET ASMX Web服务,它有一些方法,返回检测器的状态和环境温度。事件驱动的网络服务
为了实现设备的情况,我试图建立一个Android应用程序,可以通过Wifi连接到网络服务并显示温度。 当温度超过临界范围或运动检测器检测到运动时,此应用程序必须显示相关通知。
这里的问题是:每次我需要系统情况时,我都会查询web服务。但这样我必须每隔一秒查询Web服务,以了解温度是否超出临界范围,以及探测器是否检测到运动。 问题:有没有更好的解决方案来实现这一目标?或者有什么方法可以让Web服务在发生事件时通知客户?
请注意,我在我的android应用程序中使用KSOAP2库。
在此先感谢
感谢您的信息 – Kaiser
我找到了另一个解决方案,但我不确定,所以如果我错了,请纠正我。也许我可以使用套接字编程,而不是使用Web服务。通过监听双方的特定端口并定义自己的通信协议,我可以将消息从服务器发送到客户端,反之亦然。 – Kaiser
是的,这是正确的,但这意味着您将有一个连接到服务器的连接,如果在后台运行,将会消耗电池电量。 –