iOS 7多点连接-McNearByService浏览器找到自己了吗?
我有一个应用程序,它使用iOS 7 Multipeer连接框架来宣传自己以及浏览其他设备。为什么我的iOS 7多点连接-McNearByService浏览器找到自己了吗?,ios,objective-c,cocoa,multipeer-connectivity,Ios,Objective C,Cocoa,Multipeer Connectivity,我有一个应用程序,它使用iOS 7 Multipeer连接框架来宣传自己以及浏览其他设备。为什么我的MCNearbyServiceBrowser实例找到自己(应用程序运行的设备)并调用browser:foundPeer…委托方法?如果我记录为开始宣传我的设备而创建的实际PeerID,以及委托方法中发现的PeerID,则它们具有不同的唯一ID,但显示名称相同。你知道为什么吗?不幸的是,这很常见,这是由于基本的bonjour发现服务机制造成的。这实际上取决于一系列因素,包括重新广播“你好”可用性的某
MCNearbyServiceBrowser
实例找到自己(应用程序运行的设备)并调用browser:foundPeer…
委托方法?如果我记录为开始宣传我的设备而创建的实际PeerID
,以及委托方法中发现的PeerID
,则它们具有不同的唯一ID,但显示名称相同。你知道为什么吗?不幸的是,这很常见,这是由于基本的bonjour发现服务机制造成的。这实际上取决于一系列因素,包括重新广播“你好”可用性的某些网络设备
在你的应用程序中避免这种情况的最好方法是为你的MCPERID使用一个唯一的字符串(我称之为使用一个新的UUID字符串),并在你的对等浏览器UI中显示每个peerID之前,对照你的本地peerID检查其显示名
在斯威夫特,它看起来像这样
设uuid=nsuid().UUIString
self.peer=mcperid(显示名称:uuid)
。。。当您从会话代理收到“找到对等方”消息时:
如果peerID.displayName!=self.peer.displayName{
…在此处将对等点添加到可用对等点阵列
}你找到发生这种情况的原因了吗?我也有同样的问题