ios – 是否可以在没有邀请的情况下连接到Multipeer Connectivity会话?

我正在尝试创建一个类似于FireChat的应用程序,用户可以自动连接到Multipeer Connectivity会话,而无需发送或接收连接邀请.

我见过的所有教程都使用了MCbrowserViewController.必须可以加入会话而无需选择对等连接,并且如果Firechat将其连接,则发送和接受连接请求.

有谁知道如何做到这一点?

谢谢

解决方法

您可以使用MCNearbyServicebrowser而不是使用MCbroswerViewController.
然后它将调用委托方法
- (void)browser:(MCNearbyServicebrowser *)browser foundPeer:(MCPeerID *)peerID withdiscoveryInfo:(NSDictionary *)info;

然后,您可以自动发送邀请,例如:

[browser invitePeer:peerID
            toSession:self.session
          withContext:nil
              timeout:10];

然而,在这样做的过程中,我遇到了许多其他问题.到目前为止似乎:

>如果两个设备都发送邀请并接受它们,那么它们会很快随机断开连接.
>如果两台设备同时进行广告和广播,则会随机断开连接.

我现在正在开发一个开源库,试着完全按照你的要求去做:连接没有任何邀请或浏览器的设备(没有用户界面).

这是:https://github.com/plivesey/PLPartyTime

但是,它还没有工作.我还没有完全解决上述两个问题,但是如果你想查看代码并看看你能解决什么问题,那就去吧.请让我知道您取得的任何进展.处理这个框架令人沮丧……

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...