繁体   English   中英

如何在不使用locationManager didEnterRegion的情况下获取iBeacons的后台更新

[英]How to get background updates for iBeacons without using locationManager didEnterRegion

我想获取我的应用程序的后台更新以实现信标接近(进入区域),但是我刚刚阅读了以下有关Apple的文档

在iOS Simulator或设备上测试区域监视代码时,请注意,跨越区域边界后可能不会立即发生区域事件。 为了防止虚假通知,iOS在满足特定阈值条件之前不会传递区域通知。 具体来说,用户的位置必须越过区域边界,远离边界最小距离,并在报告通知之前保持该最小距离至少20秒。

理想情况下,我想使用另一种API-在检测到信标(反之则未被检测到)时立即告诉我,而无需应用Apple的启发式方法。

我本可以一直为所有可能的信标打开测距功能,但是我想那会很快耗尽电池电量。

当然有办法做到这一点,否则我会看到iBeacon的承诺破灭了:/

这些文档具有误导性,因为它们旨在涵盖对地理围栏区域(例如CLCircularRegion )以及信标区域( CLBeaconRegion )的CLBeaconRegion 您描述的启发式方法仅适用于地理围栏。

对于信标,进入区域的检测时间取决于硬件。 在iPhone 4S设备上,信标区域进入事件最多需要15分钟(信标扫描每15分钟进行一次。)在iPhone 5+设备上,借助硬件辅助,检测通常在1秒以内,但是如果所有辅助插槽均已使用(30区域最大值),它会退回到类似于iPhone 4S的行为。

还应注意,如果测距处于活动状态,则检测时间在1秒钟之内。

在此处阅读更多详细信息:

http://developer.radiusnetworks.com/2014/03/12/ios7-1-background-detection-times.html

http://developer.radiusnetworks.com/2015/04/21/max-beacon-regions-ios.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM