通常情况下我们客户端开启tcp去连接服务器都是一个连接一个线程;这样写代码也是比较easy的
public class SocketTcpClient implements Runnable {
private final String ip;
private Socket socket;
public SocketTcpClient(String ip) {
this.context = context;
this.ip = ip;
}
@Override
public void run() {
try {
socket = new Socket(ip, 5246);
OutputStream out = socket.getOutputStream();
out.write("Hello World".getBytes());
while (true) {
InputStream in = socket.getInputStream();
byte[] buff = new byte[1024];
int length = in.read(buff);
//收到的数据
String data = new String(buff, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
}
}
使用就只需要启动这个线程即可,这样就可以一直接收服务器端发送过来的数据了。如果你有多个服务器