我有一個非常簡單和基本的Java客戶端/服務器程序。這工作正常。但是,我現在正在嘗試編寫Android客戶端,並且我無法從我的Android客戶端連接到服務器。我爲普通客戶端使用的android網絡代碼使用幾乎相同的代碼。我的Android代碼很簡單,它的作用是啓動該線程的onCreate:客戶端 - 服務器程序,可以從Java客戶端而不是從Android
private int serverPort = 8889;
private String serverIP = "192.168.5.230";
private Socket socket = null;
private Thread clientThread = new Thread("ClientThread") {
@Override
public void run() {
try {
socket = new Socket();
socket.connect(new InetSocketAddress(serverIP, serverPort), 1000);
DataInputStream din = new DataInputStream(socket.getInputStream());
DataOutputStream dout = new DataOutputStream(socket.getOutputStream());
while (true) {
String message = din.readUTF();
setPicture("picture1");
}
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
港是我的服務器上運行正確的端口,如IP地址(這是我從使用ifconfig了,因爲我知道你不能使用本地主機)。當我使用相同的端口和IP地址運行我的普通PC客戶端時,連接會通過。但是,當我在我的Android設備上運行此代碼時,套接字超時,當我嘗試連接。
有沒有人有什麼建議,我要去哪裏錯了?感謝您的幫助。
您的Android設備是否連接到網絡?不是電腦,而是網絡.... – Thihara 2013-03-21 04:22:29