1

所以这里有问题:

  1. Apple 的 Bonjour 甚至可以在蜂窝网络(3G、4G、LTE)上运行吗?
  2. 如果是这样,发现的本地性如何?在同一个手机信号塔中发现所有内容?同一个供应商?整个互联网?

另外,顺便提一下,Android(库、操作系统等)上是否有任何 Bonjour 支持。

注意:我真的在寻找一种进行本地发现的方法,但是 iOS 没有可以与某些机器人一起使用的公共蓝牙 API(如果我错了,请纠正我,我真的希望我是)。我还阅读了有关通过蓝牙的 Bonjour 的信息,但我找不到任何有关它的资源。另外,NFC会是一种选择吗?

4

1 回答 1

1

要回答您的前两个问题:

  1. 不; 理论上,同一子网上的其他订阅者可以看到彼此的服务,但 AFAIK 没有规定通过蜂窝网络发送多播数据包。即使有,网络提供商也可能会对其进行过滤以减少带宽使用。

  2. Bonjour 服务通常对同一链路本地网络(即同一子网)上的任何其他设备可见,假设路由器不过滤多播数据包。大多数国内路由器中继它们,但一些大型[例如大学和公司]网络放弃它们,再次减少对带宽的需求。

您可以使用jMDNS在 Android 上进行 Bonjour 服务广告/发现,它非常成熟(或者您甚至可以自己滚动,这并不难 :)

至于蓝牙和NFC,我不确定;听起来您需要为您宣传/消费的任何服务管理一些单点注册/协调。

于 2012-10-09T23:37:08.613 回答