我知道这个问题有很多种,但我还没有看到完整的答案。我刚收到很多相互矛盾的信息。
我试图将iBeacon用于家庭自动化用例。例如,如果我走进一个带有iBeacon的房间,我打开那个房间里的灯。你可以想象,我需要这个非常迅速(在房间里走几秒钟)。当我将我的应用程序放在前台时,这非常有效 - 进入和退出该区域的时间很快。但是,如果应用程序在后台,则更不可靠。如果我调用[self.locationManager startUpdatingLocation]并且永远不会停止更新位置,则iBeacon检测的工作方式与应用程序位于前台的情况相同。但是,我认为这不是预期的用例,因为这可能会在一段时间后耗尽电池。我的问题是:
答案 0 :(得分:5)
不幸的是,你不能指望iOS后台的快速检测时间。时间取决于设备和设备状态,检测最多可能需要15分钟。在某些情况下,你可能会得到更快的检测,但你根本无法指望它。
请参阅:
http://developer.radiusnetworks.com/2014/03/12/ios7-1-background-detection-times.html
和
抱歉,我知道这不是你想听到的答案。不幸的是,这个用例只适用于iOS上的前台应用程序。