我找到了一些在 Android 中设置多播套接字服务器(接收)的示例,我正在尝试将其添加到我的项目中。我的构造函数代码如下所示:
try
{
this.socket = new MulticastSocket (PORT);
socket.joinGroup (InetAddress.getByName (MULTICAST_ADDRESS));
}
catch (Exception ex)
{
Log.e (TAG, "Start up error: " + ex.getMessage());
ex.printStackTrace();
this.running = false;
}
但是,由于我不明白的原因,每次执行 joinGroup() 行时都会引发异常。奇怪的是, printStackTrace() 行没有给我任何东西,但 Log.e() 业务给了我以下信息:
Multicast Server: Start up error: setsockopt failed: ENODEV (No such device)
我已经为我的代码添加了必要的权限(CHANGE_WIFI_MULTICAST_STATE、ACCESS_WIFI_STATE 和 INTERNET),并且我还获得了多播锁。
对这里缺少的内容有什么建议吗?