当设备已经处于信标范围内然后我们打开蓝牙和应用程序被杀死时,无法检测到信标

use*_*622 6 bluetooth objective-c ios ibeacon clbeaconregion

我已经通过本地通知实施了Beacon.当ON&then设备中的蓝牙进入信标范围并且app处于"未运行"状态时,每种情况都能正常工作.但是,当设备已经处于Beacon范围内并且然后蓝牙打开时,不会调用任何代理.这是一个限制还是我错过了什么?

小智 0

这是 Core Location 框架的限制。

\n\n

当应用程序终止“未运行”状态时,它可以由于位置管理器区域 didEnter / didExit 区域事件而重新启动。如果您在应用程序终止时打开和关闭蓝牙,您的位置管理器将不会接收区域进入/退出事件。触发 didEnter / didExit 事件的唯一方法是通过跨越检测阈值以物理方式进入或退出信标区域之一。

\n\n
    \n
  • 终止的应用程序将在区域 didEnter / didExit 事件上唤醒。
  • \n
\n\n
\n

当应用程序在前台或后台运行时,区域监控服务可以正常传递事件。(您可以将此服务用于地理区域和信标区域。)对于已终止的 iOS 应用程序,此服务会重新启动应用程序以传递事件。

\n
\n\n
    \n
  • 信标测距不会唤醒您的应用程序。
  • \n
\n\n
\n

(如果信标区域\xe2\x80\x99s的notifyEntryStateOnDisplay属性为true,唤醒设备会导致应用程序在后台寻找信标几秒钟。)此服务不会重新启动已终止的iOS应用程序;但是,您可以通过使用区域监控服务监控信标区域来重新启动。

\n
\n