我已經實現了一個家庭監測和控制系統,包含一些運動探測器和溫度傳感器,它們連接到一臺迷你PC作爲服務器。在這臺PC上,我有一個.NET ASMX Web服務,它有一些方法,返回檢測器的狀態和環境溫度。事件驅動的網絡服務
爲了實現設備的情況,我試圖建立一個Android應用程序,可以通過Wifi連接到網絡服務並顯示溫度。 當溫度超過臨界範圍或運動檢測器檢測到運動時,此應用程序必須顯示相關通知。
這裏的問題是:每次我需要系統情況時,我都會查詢web服務。但這樣我必須每隔一秒查詢Web服務,以瞭解溫度是否超出臨界範圍,以及探測器是否檢測到運動。 問題:有沒有更好的解決方案來實現這一目標?或者有什麼方法可以讓Web服務在發生事件時通知客戶?
請注意,我在我的android應用程序中使用KSOAP2庫。
在此先感謝
感謝您的信息 – Kaiser
我找到了另一個解決方案,但我不確定,所以如果我錯了,請糾正我。也許我可以使用套接字編程,而不是使用Web服務。通過監聽雙方的特定端口並定義自己的通信協議,我可以將消息從服務器發送到客戶端,反之亦然。 – Kaiser
是的,這是正確的,但這意味着您將有一個連接到服務器的連接,如果在後臺運行,將會消耗電池電量。 –