如何建立一个简单容易的UDP消息发送和接收,请看以下范例:
UDP 是User Datagram Protocol的简称, 中文名是用户数据包协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
首先,我们看一下客户端的代码:
1: String message="Hello Android!";
2: int server_port = 12345;
3: DatagramSocket s = new DatagramSocket();
4: InetAddress local = InetAddress.getByName("192.168.1.102");
5: int msg_length=message.length();
6: byte[] message = message.getBytes();
7: DatagramPacket p = new DatagramPacket(message, msg_length,local,server_port);
8: s.send(p);
从变量名中应该非常容易理解这个代码片段。
然后是服务端的代码:
1: String text;
2: int server_port = 12345;
3: byte[] message = new byte[1500];
4: DatagramPacket p = new DatagramPacket(message, message.length);
5: DatagramSocket s = new DatagramSocket(server_port);
6: s.receive(p);
7: text = new String(message, 0, p.getLength());
8: Log.d("Udp tutorial","message:" + text);
9: s.close();
必须要设置输入报文的最大值:
1: byte[] message = new byte[1500];