1
我有一個服務器套接字和3-4個Android設備作爲客戶端。我正在使用TCP/IP進行通信。哪個是最好的方法。我應該爲每個客戶使用多個端口嗎?或者我應該使用相同的端口。如果使用相同的功能,那麼我應該如何識別發往不同設備的通信?通過套接字與多個客戶端進行通信
我有一個服務器套接字和3-4個Android設備作爲客戶端。我正在使用TCP/IP進行通信。哪個是最好的方法。我應該爲每個客戶使用多個端口嗎?或者我應該使用相同的端口。如果使用相同的功能,那麼我應該如何識別發往不同設備的通信?通過套接字與多個客戶端進行通信
您可以使用一個端口。客戶可以向您發送其ID。如果它不能,你可以看看客戶的IP地址來鍛鍊它是哪一個。
有成千上萬的網絡上TCP客戶機/服務器的代碼示例,但我會用其自帶的JDK示例代碼開始,
不,你不需要幾個端口。
ServerSocket server = new ServerSocket(port);
while (true)
{
Socket socket = server.accept();
// do something with this socket - aka 1 client
new SomeClientClass(socket);
InputStream in = socket.getInputStream();
in.read(byte[]);
OutputStream out = socket.getOutputStream;
// out will only write response to its own client.
// when this new SomeClientClassis created, method returns to this point
// in while loop and waits for the next client
}
將有多個TCP/IP連接同時.... –
好,我有一個服務監聽32個客戶端「同時」連接的結構。這部分沒有任何問題。我們眼中的「模擬」與CPU中的不一樣 – Romczyk