多点连接 - 以编程方式断开对等点
Posted
技术标签:
【中文标题】多点连接 - 以编程方式断开对等点【英文标题】:Multipeer Connectivity - programmatically disconnect a peer 【发布时间】:2013-12-01 20:27:30 【问题描述】:我正在将应用程序从 GameKit 转换为 Multipeer Connectivity,但似乎找不到允许浏览器设备从会话中断开另一个对等方的方法。使用 GKSession,我们可以使用 disconnectPeerFromAllPeers: 断开单个对等点与会话的连接,但我在 MPC 中找不到类似的东西。当然,MPC 确实有 disconnect: 方法,但这会将本地对等方带出会话......不是我想要的。
我找到的最接近的是:cancelConnectPeer: 但这似乎更侧重于取消连接尝试...而不是发布连接。
如果使用 MPC 甚至可以做到这一点,任何人都知道如何做到这一点?
谢谢!
【问题讨论】:
我能够通过向对等方发送一个 NSData 数据包告诉它断开连接来完成这项工作。 如何在 MPC 中以编程方式连接,谁能帮帮我? 【参考方案1】:节点可以通过调用[MCSession disconnect]
离开会话。
如果您希望浏览器断开另一个对等点,您可以让浏览器向该对等点发送消息,并在收到该消息后使对等点与会话断开连接。
【讨论】:
【参考方案2】:我也在研究 MPC,但也发现 API 很烦人。因此,我将逻辑(例如断开特定对等点)从物理连接级别移动到应用程序逻辑级别。例如。会话/连接始终处于打开状态,并且只是通过不向特定对等方发送任何消息来进行软断开。
正如我们在 GKSession 中所经历的那样,蓝牙的性能并不稳定。使用 MPC,我们大部分时间都使用 Wifi,因此连接稳定性和成本并不重要。
【讨论】:
以上是关于多点连接 - 以编程方式断开对等点的主要内容,如果未能解决你的问题,请参考以下文章