簡體   English   中英

更改活動時如何保持與服務器的TCP連接?

[英]How do you maintain TCP connection with a server when changing activity?

我有點絕望。 我正在開發一個應該可視化污染數據的應用程序。 應用程序通過WiFi直接連接到傳感器,傳感器是組主機。 然后,我應該連接到端口5001並每2分鍾檢索一次數據。 該數據應發送到Google Maps活動,然后在信息窗口中將其可視化。

目前,我只能創建一個立即關閉的TCP連接,我遵循了這個真正簡單的TCP客戶端

因此,我需要建立一個不會關閉的TCP連接,並且在我從事其他活動時也可以運行。 我不需要發送任何消息,只需檢索數據。

我研究了如何在活動發生變化時如何保持android客戶端連接到服務器並將數據發送到服務器? 但不了解如何為我的案例實現該代碼。

你怎么做到這一點? 感謝任何幫助。

您的android應用是一個客戶端,每當您需要獲取數據時,都可以從服務器詢問它。

如果服務器在阻止模式下工作,則可以通過打開的連接向服務器發送請求,並且服務器發送響應

這是使用Socket進行客戶端/服務器連接的一些示例:

https://examples.javacodegeeks.com/android/core/socket-core/android-socket-example/

https://github.com/codepath/android_guides/wiki/Sending-and-Receiving-Data-with-Sockets

您可以找到更多示例

目前,我只能創建一個立即關閉的TCP連接

它取決於您的服務器設計,客戶端應用程序會將請求發送到服務器,如果服務器將響應發送回,則可以獲取請求,但是如果服務器沒有響應,則連接將關閉

因此,我需要建立一個不會關閉的TCP連接,並且在我從事其他活動時也可以運行。 我不需要發送任何消息,只需檢索數據

請參見上面的鏈接,無需創建不會關閉的連接,您應在每次需要時發送請求並從服務器獲取響應

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM