0
我有一个工作的服务器应用程序在JAVA(多线程)和一个工作的客户端控制台应用程序。Android客户端套接字。 UnknowHostException
现在,我试图做一个Android客户端,但是使用Eclipse和Android模拟器我无法连接到我的本地服务器....
- 是,我使用10.0.2.2作为我服务器IP。
是的,清单文件是通过INTERNET权限修改的。
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageButton; import android.widget.TextView; import android.widget.Toast; public class RealApp extends Activity implements OnClickListener { private PrintWriter pw; private BufferedReader in; private boolean connected = false; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); if (!connected) { Thread cThread = new Thread(new ClientThread()); cThread.start(); } } public class ClientThread implements Runnable { public void run() { { Socket skt = null; try { skt = new Socket("l0.0.2.2", 1337); } catch (UnknownHostException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } String s = ""; String inString = ""; BufferedReader in = null; try { in = new BufferedReader(new InputStreamReader(skt.getInputStream())); } catch (IOException e2) { // TODO Auto-generated catch block e2.printStackTrace(); } PrintWriter pw = null; try { pw = new PrintWriter(skt.getOutputStream(), true); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } do { try { inString = in.readLine(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } while(!s.equals("quit")); pw.close(); try { skt.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }}
在调试,在Log窗口我可以注意到一个System.err的消息,为10.0.2.2一个UnknowHostException。
您没有指定您正在测试的内容,但请记住,10.0.2.2别名仅适用于模拟器,而不适用于实际的手机。 – 2011-05-18 06:45:14