packagecom.example.scoket;importandroidx.appcompat.app.AppCompatActivity;importandroid.os.Bundle;importandroid.os.Handler;importandroid.os.Message;importandroid.view.View;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.TextView;importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.io.PrintStream;importjava.net.Socket;public class MainActivity extendsAppCompatActivity {private Button send=null;private TextView info=null;private Handler handler=null;private String s="";
@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
send=(Button)findViewById(R.id.send);
info=(TextView) findViewById(R.id.info);
send.setOnClickListener(newView.OnClickListener() {
@Overridepublic voidonClick(View v) {newThread()
{public voidrun(){try{
Socket client=newSocket("10.0.2.2",9090);//括号内为(服务器,端口号)
PrintStream out=newPrintStream(client.getOutputStream());
BufferedReader msgget=new BufferedReader(new InputStreamReader(client.getInputStream(),"UTF-8"));//读取返回的数据
out.println("已连接服务器");
s=msgget.readLine();
out.close();
msgget.close();
client.close();
}catch(Exception e)
{
e.printStackTrace();
}
handler.sendEmptyMessage(0);}}.start();
handler=newHandler() {//当有消息发来的时候就执行Handler方法
public voidhandleMessage(Message msg)
{super.handleMessage(msg);
info.setText(s);
}
};
}
});
}
}