我正在开发一个Android应用程序,它向局域网上的设备发送udp广播消息。应用程序在设备上以及在Windows上运行的模拟器上运行良好。但是,我无法让它在Linux和Mac Android Emulators上运行。
由于255.255.255.255不能在android上运行,我使用子网掩码计算广播ip。 (在我的情况下,广播IP是192.168.1.255,其中主机IP是192.168.1.88/24)。但邮件永远不会发送。还检查了Wireshark,但似乎udp包没有超出模拟器。
是否有人在Linux Android Emulator上发送广播消息?
任何建议都将受到高度赞赏。
答案 0 :(得分:0)
您能举例说明一下代码吗?使用UDP而不是TCP来使用带有DatagramPackets的DatagramSocket代替标准Socket或SSLSocket(或任何其他类型的Socket)非常重要。看起来这可能是你正在做的事情,因为它有时会起作用,但它可能是尝试的工作。如果这是问题,你想要任何建议,这应该足够了:
http://developer.android.com/reference/java/net/DatagramSocket.html