1

我一直在玩 iOS 7 中的新 iBeacons。我将一个设备设置为信标,而另一个设备则可以检测我何时接近、远距离、立即等。我想很快知道我什么时候跨越这些范围。有没有办法调整延迟?我发现我必须非常缓慢地移动我的设备,否则我将不知道何时跨越这些阈值。

4

1 回答 1

4

不,您将无法调整信标延迟。正如 Apple 在Region Monitoring Guide中所说:

为了防止虚假通知,iOS 在满足某些阈值条件之前不会发送区域通知。具体来说,用户的位置必须越过区域边界并从该边界移开最小距离,并在报告通知之前保持该最小距离至少 20 秒。

Apple 没有定义延迟是什么,它似乎对您的应用程序来说还不够快。

您可以进行权衡 - 使用核心蓝牙实现自己的信标测距,并在使用 RSSI 进行扫描和测距时收听 CBPeripheral 广告事件:

centralManager:didDiscoverPeripheral:advertisementData:RSSI:

如果您使用的是自定义信标,例如RadiusNetworks VirtualiBeacon VM 映像,您可以调整广告的频率。另一方面,您的应用程序必须在前台运行,这与 CoreLocation 提供信标事件相反,即使您的应用程序未运行也是如此。

于 2013-10-06T20:05:38.053 回答