2016-12-26 105 views
0

我有兩個Android設備,它們連接到同一個WiFi網絡。一臺設備充當服務器,另一臺充當客戶端。我不知道服務器的IP地址,但我知道端口號。我如何找到服務器並連接到它?TCP - JAVA - 如何在本地網絡上查找服務器?

+0

我希望這篇文章能夠幫助:http://stackoverflow.com/questions/3345857/how-to-get-a-list -of-ip-connected-in-same-network-subnet-using-java – Radi

+0

我沒有找到嘗試這種解決方案的機會,但似乎是一個好方法。 – AmirHosein

回答

1

一種選擇是使用UDP廣播。您的服務器正在等待特定端口和網絡接口上的請求。然後你的客戶端發送一個針對廣播地址的虛擬請求(例如192.168.1.255),一旦服務器回覆你可以獲得服務器的IP地址。

完成後,客戶端可以關閉udp套接字連接並根據需要啓動tcp通信。

一個良好的開端可能是這樣的:http://michieldemey.be/blog/network-discovery-using-udp-broadcast/

希望這有助於

+0

@AmirHosein有道理嗎? – Lino

+0

對不起,很長時間沒有答覆。但是我想避免UDP連接,因爲不能保證網絡上的傳輸數據被髮送到接收器。 – AmirHosein

相關問題