2012-07-19 133 views
0

我有一個支持客戶端之間的消息傳遞的Android上的服務器客戶端應用程序。 ı在同一臺計算機上的不同模擬器上運行服務器和客戶端程序。當服務器正在監聽端口時,客戶端嘗試將它與這些語句連接起來。當連接到服務器,套接字不連接

String serverIpAddresss = "10.0.2.2"; 
InetAddress addr = InetAddress.getByName(serverIpAddresss); 
Socket socket = new Socket(addr,REDIRECTED_SERVERPORT); 

之前,我重定向5000:6000因爲5000是客戶端和6000是服務器的端口。新的套接字線它不工作,並沒有創建套接字。任何人都可以幫助我如何連接客戶端和服務器,以及如何與他人溝通?

+0

而不是「10.0.2.2」使用您的系統的靜態IP ..並檢查INTERNET的權限。 – user370305 2012-07-19 06:18:28

+0

同樣來自你係統上的命令shell,'adb forward tcp:5000 tcp:6000' – user370305 2012-07-19 06:23:12

+0

如果你的意思是127.0.0.1我已經嘗試過了,但是它也不行。因爲所有amulators和電腦hava它是自己的互聯網空間,所以我必須首先連接他們eacother,但我不能。而且我也有我的清單許可。 – Emre 2012-07-19 06:24:38

回答

0

添加到您的Android清單文件:

<uses-permission android:name="android.permission.INTERNET"></uses-permission> 

編輯

Android模擬器連接到相同的網絡,主機,但與它自己的IP。默認情況下,它使用NAT連接。你應該能夠連接。

檢查服務器端口是否打開並且防火牆規則。

+0

我正在使用一臺安全的網絡計算機,並且我連接了一個公司域名,所以有一些安全規則和一些限制。我的意思是有防火牆規則,並且不能修復許可權。 – Emre 2012-07-19 06:33:29

相關問題