All I want is my UDP broadcast to work:
@Override
protected String doInBackground(String[] params) {
try {
DatagramSocket datagramSocket = new DatagramSocket();
datagramSocket.setBroadcast(true);
byte[] buffer = "test".getBytes();
DatagramPacket packet = new DatagramPacket(buffer, buffer.length, InetAddress.getByName("192.168.0.255"), 8899);
datagramSocket.send(packet);
System.out.println("Package sent.");
System.out.println("Data: " + buffer);
System.out.println("Broadcast address: " + this.broadcastAddress);
System.out.println("--------------------------");
} catch (Exception e) {
System.out.println("Package not sent: " + e.getMessage());
e.printStackTrace();
}
return "complete";
}
This code gets executed on an onClick event by a button and is inside an AsyncTask.
The log for 2 clicks is:
System.out﹕ Package sent.
System.out﹕ Data: [B@3b9b0914
System.out﹕ Broadcast address: /192.168.0.255
System.out﹕ --------------------------
System.out﹕ Package sent.
System.out﹕ Data: [B@3090d7b2
System.out﹕ Broadcast address: /192.168.0.255
System.out﹕ --------------------------
So it looks like it's working. But it's not since I can't catch it with Wireshark.
What I've tried is using an UDP package sender on my phone, and that works.
Maybe it's because I can't send UDP packages like this on my watch? Does anyone have an idea on what to search for?