Tag: Multipeerconnectivity

我如何使用5台iDevice弹钢琴(MultipeerConnection框架)

iOS开发人员使用Multipeer Connection框架来创建多种设备体验,例如多人游戏。 该框架基于bonjour协议构建,在iOS 7中实现并在WWDC 2013上展示,尽管多年来失去了光芒,但MPC仍然是一个了不起的工具。 本文旨在为您提供Multipeer Connection框架应用程序的简单实现:使用多个设备弹钢琴。 所以,走吧! 该项目可以从GitHub下载: leodegeus7 / MultipeerKeyboard MultipeerKeyboard —一个iOS Multipeer连接键盘。 github.com 目录: iOS Multipeer Connection如何工作? 如何在设备之间传递信息? 如何实现多对等连接? 如何用MPConnection创建钢琴? iOS Multipeer Connection如何工作? Multipeer Connectivity框架使用设备无线功能来检测运行相同框架的附近设备,从而使小工具之间的通信成为可能。 因此,它使用Wifi和蓝牙在iPad和iPhone之间交换信息,以创建多人游戏应用或给人留下深刻印象。 如何在设备之间传递信息? 要在两台设备之间传递信息,您的应用需要建立一个对等会话进行通信。 为了阐明这种连接是如何工作的,请想象以下情况:两个需要互相交谈的人,Marco和Alex。 Marco打电话给他周围的每个人。 亚历克斯正在寻找附近的人聊天。 当Alex听到Marco打电话时,他以连接请求答复Marco。 Marco可以接受或拒绝Alex的请求。 如果Marco接受了请求,则将在它们之间创建一个“梨对梨”的会话,现在,他们可以双方交谈了。 超级容易! 为了加点I并与T交叉,我们将广告称为Marco,将广告称为Browser。 因此,现在我们可以了解Multipeer Connection操作。 如何实现多对等连接? 要实现多对等连接,我们需要使用三个委托:MCNearbyServiceBrowserDelegate,MCNearbyServiceAdvertiserDelegate和MCSessionDelegate。 如果您阅读了上一个会话,则可以猜测每个代表可以做什么。 因此,使用Xcode创建一个类并导入MultipeerConnectivity框架。 要管理会话和对等方,我们需要实例化一些变量,例如会话,peerId(设备标识),保留广告商的服务和保留浏览器的服务。 最后,我们需要实现代表: MCNearbyServiceBrowserDelegate 使用此委托,您可以看到MultiConnection服务在其他设备中进行搜索。 当框架找到其他设备时,它将自动邀请对等方进行连接。 我建议您创建班级的扩展以使事情井井有条: MCNearbyServiceAdvertiserDelegate 使用MCNearbyServiceAdvertiserDelegate可以接受来自浏览器的邀请。 为了使事情井井有条,我创建了一个梨子数组,每个新梨子都附加到梨子数组中。 以下代码中最重要的一行是InvitationHandler(true,self.session),通过此行,您可以创建逻辑来选择广告客户是否要接受或拒绝来自浏览器的邀请。 […]