Android设备无法在DatagramSocket上接收数据

Android设备无法在DatagramSocket上接收数据,android,sockets,Android,Sockets,我有两个安卓设备,一个IP地址为10.0.0.6,另一个IP地址为10.0.0.9,我可以在我的电脑上ping这两个设备 我从10.0.0.6 UDP包发送广播消息,并用wireshark验证 广播地址为10.0.0.255 DatagramSocket套接字=新DatagramSocket(3400) 然而,我的另一台安卓设备没有收到来自广播消息的任何信息 DatagramSocket套接字=新DatagramSocket(3400) 它永远不会从套接字返回。接收 如果您不使用广播,而是将数据

我有两个安卓设备,一个IP地址为10.0.0.6,另一个IP地址为10.0.0.9,我可以在我的电脑上ping这两个设备

我从10.0.0.6 UDP包发送广播消息,并用wireshark验证

广播地址为10.0.0.255

DatagramSocket套接字=新DatagramSocket(3400)

然而,我的另一台安卓设备没有收到来自广播消息的任何信息

DatagramSocket套接字=新DatagramSocket(3400)


它永远不会从套接字返回。接收

如果您不使用广播,而是将数据包直接发送到设备上,它是否有效?在您的局域网上是否有路由器?默认情况下,大多数路由器都会阻止UDP广播。
    socket.setBroadcast(true);

    byte[] buf = ("Hello from Android").getBytes();


    DatagramPacket packet = new DatagramPacket(buf, buf.length,  getBroadcastAddress(), 3400);

    socket.send(packet);
            byte[] buf = new byte[30];

            DatagramPacket packet = new DatagramPacket(buf, buf.length);

            socket.receive(packet);