我已閱讀了很多關於此主題的內容,但似乎找不到可幫助我的一些答案。 我已經將我的應用程序建模爲前端後端。後端只是一個等待傳入連接的服務器。問題是我一開始應用程序就啓動服務器,我不再與它通信。 現在我需要服務器與前端進行通信,告訴它有人連接。我嘗試了使用靜態方法,但是由於無法從另一個thead更新de UI而出現錯誤。 我該怎麼辦? 編輯:處理來自不同線程的UI更新
我的服務器類
public class Server {
public static int uniqueID;
private final int port;
private final Boolean keepWorking;
private final String username;
public Server(int port, String username) {
this.port = port;
this.username = username;
keepWorking = true;
}
public void Start() {
try {
ServerSocket serverSocket = new ServerSocket(port);
while (keepWorking) {
Socket socket = serverSocket.accept();
MainActivity.SomeoneConnected();
}
serverSocket.close();
} catch (IOException e) {
Log.d("Error", e.getMessage().toString());
}
}
}
這就是我需要的一切。該服務器可以告訴前端有人連接
請修改您的問題以準確解釋您正在使用的Android結構。例如,這是「只是服務器」某種「服務」?它在等待什麼樣的「連接」? – CommonsWare