4

谁能解释 bonjour 如何从 iphone OS 3.0 开始通过蓝牙工作?

文档说应用程序中使用的 Bonjour API 也能正常工作,即使 Wi-fi 已关闭且蓝牙已打开。它还说,蓝牙 PAN 已建立,因此 IP 地址出现了。

但是 Bonjour(基于 mdns)需要多播才能工作。但是,蓝牙 PAN(微微网)的工作原理是主从概念。对等点之间要交换的任何数据都必须先到主节点,然后主节点再转发给所有客户端。此外,对 piconet 中的从设备数量有限制,即 8。这意味着通过蓝牙的 bonjour 有一个限制,它最多只能用于 8 个设备?

4

2 回答 2

3

显然,这是 PANU 到 PANU 的通信。所以限制实际上是 - 一对一的沟通。如果你使用 Xcode 中包含的蓝牙资源管理器,你会看到 iOS 设备提供了一个 ID 为的服务0x1115。由于连接中没有 GN 和 NAP 节点,因此只有两个设备可以参与连接。

蓝牙资源管理器还显示了用于交换有关连接的元数据的各种自定义字段。有关服务公告的示例,请参阅我的一些相关问题。

我只能在使用 GameKit 时,在 4.2.1 的 iPhone 3G 和 5.0.1 的 iPad 上获得这项服务。

于 2011-11-25T18:45:57.970 回答
0

我对 Boujour 和 iPhone 一无所知......也许 Bonjour 只是看到 TCP/IP 网络并对其进行多播 - 无论 IP 网络是通过蓝牙、WiFi 还是 FooBar...

IIRC PAN 只是形成到 PAN 对等点的点对点链接,因此如果对等点是接入点(而不仅仅是另一个端节点),它将处理多播数据包。

于 2010-07-29T14:22:05.377 回答