Multipeer Connectivity 自动静默连接
Posted
技术标签:
【中文标题】Multipeer Connectivity 自动静默连接【英文标题】:Multipeer Connectivity automatic silent connection 【发布时间】:2016-05-08 20:05:24 【问题描述】:我正在尝试创建一些 ios 应用程序,这些应用程序可由 OS X 应用程序通过 MultiPeer Connectivity 框架进行管理。我是这个框架的新手,但到目前为止一切正常,我想知道如果连接丢失是否可以自动连接到对等体。
我在***和其他网站上浏览了一些想法,建议使用MCNearbyServiceBrowserDelegate
及其函数startBrowsingForPeers()
在我检测到对等点丢失时开始浏览对等点(这个检测对我也很有效) .
在下一步中,这个函数应该调用一个函数:browser(browser: MCNearbyServiceBrowser, foundPeer peerID: MCPeerID, withDiscoveryInfo info: [String : String]?)
from MCNearbyServiceBrowserDelegate
,但在我的例子中,看起来函数browser found peer
从未被调用过。有什么想法吗?
谢谢
【问题讨论】:
您是否正确设置了委托以便调用您的委托方法? 【参考方案1】:@dgatwood 没错!谢谢你。我刚找到它。 :)
对于其他人,如果您遇到相同的情况 - 您必须正确委派它,例如在对改变对等状态做出反应的方法中:
appDelegate.mpcHandler.autoBrowser = MCNearbyServiceBrowser.init(peer: peerID, serviceType: "network")
appDelegate.mpcHandler.autoBrowser!.startBrowsingForPeers()
appDelegate.mpcHandler.autoBrowser!.delegate = self
当然,在 mpcHandler 类或其他使用并继承 MCNearbyServiceBrowserDelegate
协议的类中适当定义 autoBrowser:MCNearbyServiceBrowser?
...
【讨论】:
以上是关于Multipeer Connectivity 自动静默连接的主要内容,如果未能解决你的问题,请参考以下文章
Multipeer Connectivity foundDevice 两次
如何检测 Multipeer Connectivity 邀请的拒绝?
无法通过 Multipeer Connectivity 连接蓝牙
如何使用swift 4查看Multipeer Connectivity框架中的MCBrowserViewController