我正在尝试创建一些iOS应用,该应用可以通过MultiPeer Connectivity框架由OS X应用管理。我是使用此框架的新手,但到目前为止一切正常,并且我想知道如果连接丢失,是否可以自动连接到同级。
我在stackoverflow和其他网站上浏览了一些想法,建议在检测到对等方丢失时使用带有功能MCNearbyServiceBrowserDelegate
的startBrowsingForPeers()
开始浏览对等方(此检测对我也很有效)。
在下一步中,此函数应调用一个函数:browser(browser: MCNearbyServiceBrowser, foundPeer peerID: MCPeerID, withDiscoveryInfo info: [String : String]?)
中的MCNearbyServiceBrowserDelegate
,但就我而言,它看起来从未调用过该函数。有任何想法吗?
谢谢
最佳答案
@dgatwood Yeap正是!谢谢。我刚刚找到了。 :)
对于其他人,如果遇到相同的情况,则必须正确地委派它,例如,在对端状态发生变化时做出反应的方法中:
appDelegate.mpcHandler.autoBrowser = MCNearbyServiceBrowser.init(peer: peerID, serviceType: "network")
appDelegate.mpcHandler.autoBrowser!.startBrowsingForPeers()
appDelegate.mpcHandler.autoBrowser!.delegate = self
当然在mpcHandler类或正在使用并继承
autoBrowser:MCNearbyServiceBrowser?
协议的其他类中对MCNearbyServiceBrowserDelegate
进行了适当的定义...