12.21-Android ServerSocket
建立ServerSocket服务器
1、new ServerSocket对象servierSocket
2、接收客户端请求Socket client = servierSocket.accept();
3、以字节流的方式循环读取客户端数据
4、对于要不要关闭客户端和输入输出流的话,个人还是不太了解的。
但是对于这个程序而言,可以实现的是,不断接收客户端的数据,并对该数据通过handler进行响应。
**************华丽的分割线**************
/** * Socket服务器 * * @author Administrator * */ public class SocketServerDemo extends Thread { @Override public void run() { // TODO Auto-generated method stub super.run(); //Socket服务器 ServerSocket serverSocket = null; //Socket客户端 Socket client = null; //输入流 InputStream ips = null; //字节 byte[] b = new byte[32]; try {
//服务器端口号 serverSocket = new ServerSocket(8777);
//循环接收客户端 while (true) { // 等待客户端请求,如果没有客户端请求,会一直堵塞在这里 client = serverSocket.accept(); ips = client.getInputStream(); try { //循环接收客户端信息 while(true){
//按规定的字节数读取数据 int count = ips.read(b);
//设置一样字节的字节数组 byte temp[] = new byte[count];
//以循环的方式接收数据 for (int i = 0; i < count; i++) { temp[i] = b[i]; } String str = new String(temp) ; if(str.equals("888")){ Message mes = new Message(); mes.what = 1; mhandler.sendMessage(mes); }else { Message mes = new Message(); mes.what = 2; mhandler.sendMessage(mes); } } } catch (Exception e) { e.printStackTrace(); } } } catch (IOException e1) { e1.printStackTrace(); } } }