Android WiFi直接WiFi\u P2P\u对等点\u更改\u从未收到操作
我正在尝试通过WiFi direct为Android制作一款多人游戏。我按照上的说明连接到设备Android WiFi直接WiFi\u P2P\u对等点\u更改\u从未收到操作,android,wifi-direct,Android,Wifi Direct,我正在尝试通过WiFi direct为Android制作一款多人游戏。我按照上的说明连接到设备 我与discoverPeers()一起使用的ActionListener成功返回,但我从未收到我将调用requestPeers()的WIFI\u P2P\u PEERS\u CHANGED\u ACTION意图。奇怪的是,当我在一台设备上设置WiFi direct系统时,另一台设备能够通过我的应用程序成功地检测到它。我需要让我的设备在我的应用程序中被发现吗?我在Android开发者资源中没有发现任何关
我与
discoverPeers()
一起使用的ActionListener成功返回,但我从未收到我将调用requestPeers()的WIFI\u P2P\u PEERS\u CHANGED\u ACTION
意图。奇怪的是,当我在一台设备上设置WiFi direct系统时,另一台设备能够通过我的应用程序成功地检测到它。我需要让我的设备在我的应用程序中被发现吗?我在Android开发者资源中没有发现任何关于WiFi P2P的信息。有WiFi direct用于服务发现,但这完全是另外一回事,不是吗?您是否将WiFi\u P2P\u对等点\u CANGED\u操作添加到您的广播接收器意图过滤器中?我们需要更多信息来帮助您。您必须在设置/Wifi/Direct Wifi/可用设备下查找设备您还需要在其他设备上运行DiscoveryPeers()
。
现在您将收到WIFI\u P2P\u PEERS\u CHANGED\u ACTION
intent我和您一样经历了同样的问题
在这种情况下,有两个因素会导致这个问题。
首先,事件从未发生,也没有向其他人广播。
第二,尽管事件发生了,但意图过滤器没有捕捉到它
在我的例子中,我发现接收者没有正确地获取事件。
原因是我没有正确地将Receiver注册到意图过滤器
等我做完
intentFilter.addAction(WifiP2PManager.WIFI_P2P_PEERS_CHANGED_ACTION),
我没有这样做
ct.registerReceiver(bReceiver, intentFilter).
ct是活动或上下文,以及
bReceiver是WifiDirectBroadcastReceiver。我第一次写
ct.registerReceiver(bReceiver, intentFilter),
但是,它没有得到正确的执行
我希望这对你有帮助嗯,是的。正如我所说的,我遵循了上一节课的指导。我不确定还能提供什么其他信息。我可以发布代码,但它看起来像官方示例中的代码,所以这也不是很有趣。这里也有同样的问题。有没有找到问题所在?这里的答案有点过时,但可能会告诉你该去哪里寻找:。你找到解决方案了吗??