本文章主要是写Android作为客户端。
- Android客户端
对于Android客户端,我们需要创建一个Socket对象,并指定服务器的IP地址和端口号。然后,使用Socket对象的connect()方法连接到服务器。连接成功后,可以使用Socket对象发送和接收数据。但其中一个比较重要的点是要使用到多线程,因为Android应用程序是单线程的。
代码如下:
public class socket extends Thread{
//Declare variables
private String ip;
private int port;
private Socket socket;
private BufferedReader in;
private BufferedWriter out;
//获取ip和端口
public socket(String ip, int port) throws IOException {
this.ip = ip;
this.port = port;
}
//重写run方法,
@Override
public void run() {
try {
socket = new Socket(ip,port);
//创立输入输出流
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
} catch (IOException e) {
throw new RuntimeException(e);
}
//不断扫描直到接收到消息
while(true){
try {
//读取消息(一行一行所以发送方要加入\r\n)
String msg =in.readLine();
System.out.printf("收到消息:%s\n",msg);
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
}}
//以上只是Android和java连接并且接收消息发送的话自然还要多一个方法用于发送消息
至于java的服务器端请查询上一篇qt和java的socket通信,写的比较菜还请多多担待;
//创立新的socket连接