在过去一周左右的时间里,我一直在反对这个。我已经浏览了以下资源:
- StackOverflow:在没有 Gamekit 的情况下通过蓝牙享受 Bonjour ?(3844189)
- StackOverflow:Bonjour Over Bluetooth 是如何工作的 (3350094)
- StackOverflow:在其他平台上使用 iOS GameKit 的“Bluetooth Bonjour” (8070998)
- 技术问答 QA1753 -- Apple Developer
- WiTap 示例应用程序
- SRVResolver 示例应用程序
- DNSSDObjects 示例应用程序
我正在使用 Mac OS 10.7、Xcode 4.5、带有 iOS 6 的 iPhone 4 和带有 iOS 5.1.1 的 iPad 1。
我的问题是这样的:我正在修改一个应用程序,该应用程序当前使用 GameKit 的对等选择器在 iPad 和 iP{hone|od touch} 之间进行连接。我们想修改它以通过蓝牙使用 Bonjour,因为如果连接丢失,我们在使用 Gamekit 重新连接设备时遇到了问题。我已经使用 dns_sd.h API 取得了一些成功,并且已经获得了通过 wifi 进行广告和解析的服务,但是即使我通过了 kDNSServiceFlagsIncludeP2P,我也没有通过蓝牙获得任何成功。
我认为蓝牙 Bonjour 可能已经需要在设备之间建立 PAN,但即使将 iPad 与 iMac 配对并浏览 DNS-SD 服务也没有给我任何帮助……而且 iPhone 无论如何也不会与 iPad 配对。