我正在使用Multipeer Connectivity在Swift中编写聊天应用程序时遇到问题。让2个设备一起分享他们的会话似乎没有问题,但是当我连接第3个时,应用程序开始做奇怪的事情。
例如:你有3个设备;设备A,设备B&设备C。
我将设备A连接到设备B,一切都很好,两者都可以互相通话&分享他们的个人资料(在相互连接的两个设备上,他们互相分享个人资料图片。)
然后我将设备A连接到设备C.它们连接并且通常会相互共享配置文件。但是,Multipeer Connectivity似乎想要在没有用户询问的情况下将设备C的会话共享到设备B,尝试共享配置文件,然后其中一个设备(通常是本例中的设备C)将崩溃&关闭应用程序。
当Multipeer Connectivity运行该方法时,它会运行以将2个设备会话连接在一起。它似乎想要收集来自每个设备的所有连接的用户会话。尝试将任一设备连接到相反的已知连接用户。任何人都可以向我解释为什么Multipeer Connectivity会这样做&如果无论如何都要阻止它这样做?
我确实意识到MPC使用网状网络允许设备使用菊花链式连接通过其他设备进行通信,但我不明白他们为什么要分享彼此的会话。当然它应该只与所请求的设备共享会话而不是每个人都连接到这些会话?