我正在尝试制作一个应用程序作为一种爱好,我需要知道,是否可以在不请求每个设备许可的情况下广播到所有附近的设备? 如果可以要求用户接受所有传入连接并向设备发送连接请求,而不需要用户选择哪个设备,这对我来说会很棒。 我发现您可以使用 multipeer 连接最多 7 个对等点,但用户必须选择他想要连接的每个设备。 附近广播的任何选项都会对我有所帮助, 感谢您的帮助! :)
最佳答案
接受邀请很简单,无需提示广告商接受,只需将 invitationHandler
设置为 true 即可。
例如,在我的实现中,我有一个 MPManager 类:
func advertiser(advertiser: MCNearbyServiceAdvertiser, didReceiveInvitationFromPeer peerID: MCPeerID, withContext context: NSData?, invitationHandler: (Bool, MCSession) -> Void) {
self.invitationHandler = invitationHandler
delegate?.invitationWasReceived(peerID.displayName)
}
以及委托(delegate)方法:
func invitationWasReceived(fromPeer: String) {
self.appDelegate.cManager!.invitationHandler(true, self.appDelegate.cManager!.session)
self.connectingLabel.text = "Connecting"
}
对于浏览器端,您可以类似地自动向它找到的任何对等点发送邀请,问题是何时停止搜索对等点,并在它们全部连接后继续您想做的事情。
你查过PeerKit吗? ?我将自己定位为零配置方法。我简单地检查了一下我在做什么,但不太符合我的需要。也许它适合你。
关于ios - 您是否可以在不请求设备和广播用户许可的情况下向附近的设备广播数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34209605/