如何通过Bonjour测量设备之间的距离?

时间:2012-12-24 10:38:08

标签: ftp ios6 bluetooth wifi nsnetservice

我正在尝试在蓝牙工作区的两台设备之间发送数据。

由于蓝牙无法发送文件,我想检查设备是否在蓝牙活动区域,如果是,请通过wi-fi发送文件。我试图使用GameKit,但它不符合我的需要,因为:

  1. 我想隐藏用户的传输接口
  2. 如果有可能,GameKit立即开始使用wi-fi,我不需要
  3. 正如我所见,这里最好的方法是使用NSNetService类的Bonjour。但我仍然无法理解如何判断设备是否处于蓝牙活动区域。

    由于主要想法是找出靠近用户设备的设备,我也不介意如何测量除蓝牙服务之外的设备之间的距离。

    在一个地方可能会有很多用户,因此花费的时间越少越好。

    任何帮助?

    谢谢!

1 个答案:

答案 0 :(得分:0)

查看HHServices,它可以很好地隐藏通过蓝牙进行服务发布/发现的实施细节。

您基本上希望使用HHServices在接收对等方发布“文件接收服务”。在发送方面,您将尝试发现发布此服务的同行。当发现提供“文件接收服务”的对等体时,您知道对等体处于蓝牙范围内。

但是,要通过WiFi发送文件,您需要将目标的WiFi地址(或接收方的任何其他标识)发送给发件人 - 可能是通过将其发布到FileReceiveService的TXT记录中。