2013-09-26 56 views
1

我一直在iOS 7中使用新的iBeacons。我有一个设备设置作为信标,另一个设备可以检测我什么时候接近,远近,即时等。当我跨越这些范围时很快就知道。有什么办法可以调整延迟吗?我发现我必须非常缓慢地移动设备,否则我不会知道什么时候跨越这些阈值。测距iBeacon等待时间

+0

使用AirLocate项目,我看到“距离”更新与延迟,我猜这是推动范围名称。所以在某种程度上,你是问距离计算(以及真正的两个设备之间的信号可以更快)吗? – Spectravideo328

回答

4

不,您将无法调整信标延迟。随着苹果说,在Region Monitoring Guide

为了防止虚假通知,直到某一阈值条件得到满足的iOS不提供区域 通知。 具体而言,用户的位置必须穿过区域边界,并且在通知被报告为 之前以最小距离从该边界移开并保持在该最小距离至少20秒处保持该 。

苹果并没有定义什么是延迟,它似乎不够快,为您的应用程序。

你可以有一个权衡 - 使用蓝牙核心来实现灯塔为自己和听,而扫描CBPeripheral广告活动和范围使用RSSI:

centralManager:didDiscoverPeripheral:advertisementData:RSSI:

如果您使用的是自定义信标,如RadiusNetworks VirtualiBeacon VM image您可以调整广告的频率。即使您的应用程序未运行,您的应用程序的另一面也必须在前台运行,与CoreLocation相反,从而实现信标事件。

+0

似乎可以使用Beacon信号让用户唤醒你的应用程序,然后当最前面的开始使用Core蓝牙来获得更详细的信息时,当你再次移动到背景时关闭Core蓝牙。 –