#为数不多的原创#
先建立UDP连接。为了方便,我先固定UDP端口。
李子铮告诉我们,UDP是不可靠的,但是开销小。传语音不需要非常可靠啊。每个包传递64kB。
客户端:
等待网络连接后,开启一个线程,专门接收udp报文。当然,原来接受tcp信令的线程也还存在。如下:
new Thread(new Runnable() {
public void run() {
while(netConnected) {
byte[] data = new byte[256];
DatagramSocket udpSocket = null;
Log.i("tag", "1client开始接收udp");
try {
udpSocket = new DatagramSocket(63002);
} catch (SocketException e) {
e.printStackTrace();
}
DatagramPacket packet = new DatagramPacket(data,data.length);
try {
udpSocket.receive(packet);
} catch (IOException e) {
e.printStackTrace();
}
udpSocket.close();
Log.i("tag","1client接收完成udp");
Log.i("tag", "1client"+data[0]+" "+data+" "+data+""+data);
}
}
}).start();
客户端发送:
try {
DatagramSocket udpSocket = new DatagramSocket(63000);
byte[] buf = new byte[256];
buf[0] = 2;
buf = 3;
Log.i("tag", "1client开始发送udp");
InetAddress ip =InetAddress.getByName(CommonConfig.SERVER_IP.trim());
DatagramPacket packet = new DatagramPacket(buf, buf.length, ip,CommonConfig.AUDIO_SERVER_UP_PORT);
udpSocket.send(packet);
udpSocket.close();
Log.i("tag", "1client完成发送udp");
} catch (SocketException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
在这里发送的是buf数组。
server的接收和发送:
byte[] data = new byte[256];
System.out.print("开始接收udp ");
DatagramSocket udpUpSocket = new DatagramSocket(20086);
DatagramPacket upPacket = new DatagramPacket(data,data.length);
udpUpSocket.receive(upPacket);
InetAddress add1 = upPacket.getAddress();
int port1 = upPacket.getPort();
System.out.print(" "+port1+" "+add1);
udpUpSocket.close();
System.out.println("接收完成udp");
System.out.println(data[0]+" "+data+" "+data+""+data);
System.out.print("开始发送udp ");
DatagramSocket udpDownSocket = new DatagramSocket(20087);
InetAddress ip =InetAddress.getByName("192.168.1.133".trim());
DatagramPacket downPacket = new DatagramPacket(data,data.length,ip,63002);
InetAddress add2 = downPacket.getAddress();
int port2 = downPacket.getPort();
System.out.print(" "+port2+" "+add2);
udpDownSocket.send(downPacket);
udpDownSocket.close();
System.out.println("发送完成udp");
赏
I 相关 / Other
PO主在看完昨天恩叔的发布会之后,再次被他的机智萌得不要不要的,遂萌发了整理恩叔语录的想法。遥想恩叔刚
今天早上睡了个懒觉——确切的说,打算睡个懒觉,却比平时醒的都早了,因为今天休息爸爸收拾一下上班了,妈
感谢各位一直以来对《梦王国与沉睡的100王子》的支持!
从明天开始,游戏内将开放《精灵的守护者们》活动,
2015-11-03 台湾达人 台湾达人
池上的美,云最知道。云忘记时间,无所谓,无所事事,轻松地来轻松去。“云
(加拿大某华人老油条写在西西河上的文章。)极端穆斯林体系是个多大的生意有人说,在魁北克一个地方,穆斯