|
class SendUDPBrocastListener implements OnClickListener {
@Override
public void onClick(View v) {
// 发送的数据包,局网内的所有地址都可以收到该数据包
DatagramPacket dataPacket = null;
try {
ms.setTimeToLive(4);
Toast toast = Toast.makeText(MainActivity.this,
"hello ,I love you", Toast.LENGTH_LONG);
toast.show();
// 将本机的IP(这里可以写动态获取的IP)地址放到数据包里,其实server端接收到数据包后也能获取到发包方的IP的
byte[] data = "192.168.1.1".getBytes();
// 224.0.0.1为广播地址
InetAddress address = InetAddress.getByName("224.0.0.1");
// 这个地方可以输出判断该地址是不是广播类型的地址
System.out.println(address.isMulticastAddress());
dataPacket = new DatagramPacket(data, data.length, address,
45000);
ms.send(dataPacket);
ms.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
为什么在Toast那块就不能调试打印出结果啦,求大师指导 |
|