TCP实现客户端(Android)和服务器之间通信

Android版的通信和JavaSE版通信

二者都是使用基于TCP协议实现的一组API,都是使用ServerSocket服务器与Socket通道实现的服务器和客户端之间的对话。因此从原理上二者是完全相同的。在Android APP的开发上,一般需要通过Java-ADT写一个客户端安装到安卓手机上,再通过JavaSE写一个服务器。客户端通过服务器的ip地址和端口号连接服务器,服务器再作为中间环节连接别的客户端应用,服务器也可以连接数据库做数据的管理和分发。

Android版客户端的实现

1、按下按钮获取输入的ip地址和端口号。并创建一个线程去连接服务器,处理消息。

 protected void onCreate(Bundle savedInstanceState) {
   
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);        
        final EditText ipText=(EditText)this.findViewById(R.id.editText1);
        final EditText portText=(EditText)this.findViewById(R.id.editText2);        
        Button button=(Button)this.findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {
   			
			@Override
			public void onClick(View v) {
   
				String ip=ipText.getText().toString();//获取输入的ip
				int port =Integer.parseInt(portText.getText().toString());//获取输入的端口号
				Conn2Server cs=new Conn2Server(ip,port);//创建一个线程来处理消息的收发
				cs.start();
			}
		});
    }

2、线程类。

class Conn2Server extends Thread{
   	
	private String ip;
	private int port;
    private InputStream ins;
    private OutputStream ous;
    /**
     * 构造方法
     * @param ip
     * @param port
     */
	

你可能感兴趣的:(Android开发,Android版通信,ServerSocket,Socket通信,Socket代码的封装)