我在 android 上有一个客户端服务器应用程序,两者都在同一台机器上运行。在我的客户端应用程序的第一个活动中,我尝试调用应该连接到服务器应用程序的客户端类,但我强制关闭。
这就是我在应用程序的第一个活动中调用客户端类的方式:
Thread cThread=new Thread(new ClientThread());
cThread.start();
这是我的客户类:
public class ClientThread implements Runnable{
private Handler handler=new Handler();
Socket socket;
private TextView clientState;
public void run()
{
try
{
InetAddress serverAddr=InetAddress.getByName("10.0.2.2");
handler.post(new Runnable(){
public void run(){
clientState.setText(" try to connect!");
}
});
socket=new Socket(serverAddr, 8080);
//connected=true;
handler.post(new Runnable(){
public void run(){
clientState.setText("Connected!");
}
});
}
catch(Exception e){
handler.post(new Runnable(){
public void run(){
clientState.setText("Error");
}
});
e.printStackTrace();
}
}
protected void onStop() {
super.onStop();
try {
// make sure you close the socket upon exiting
//out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
有人可以告诉我出了什么问题,或者至少给我一个想法。我应该说的一件事是我的客户端工作正常 - 它连接到服务器,当客户端类集成到我的第一个活动中时(我的意思是,最初我没有客户端类都在第一个活动中......而且它工作正常)。我在这里了解更多详情!提前谢谢你!