如何建立一個簡單容易的UDP消息發(fā)送和接收,請看以下范例:
UDP 是User Datagram Protocol的簡稱, 中文名是用戶數(shù)據(jù)包協(xié)議,是 OSI 參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡單不可靠信息傳送服務(wù)。
首先,我們看一下客戶端的代碼:
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);
從變量名中應(yīng)該非常容易理解這個代碼片段。
然后是服務(wù)端的代碼:
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();
必須要設(shè)置輸入報文的最大值:
1: byte[] message = new byte[1500];