首页 文章

AltBeacon - 可靠性问题:即使除了android设备之外的信标是正确的,也经常调用“didExitRegion”

提问于
浏览
2

Brief process of how AltBeacon works in the app:

  • 检测指定ID的iBeacon(UUID,主要/次要ID)

  • 调用"didEnterRegion"时运行一个线程(并继续运行,直到信标超出范围)

  • 当"didExitRegion"被调用时,在停止线程之前等待30秒(这是为了确保信标肯定在范围之外)

  • 在30秒延迟期间再次调用"didEnterRegion"时继续运行线程并停止线程,否则 .

And I found some reliability problems:

即使iBeacon在应用程序之外,也经常调用“didExitRegion” . 一旦调用了“didExitRegion”,即使扫描周期设置很短,重新扫描iBeacon也需要几秒钟,甚至超过一分钟 .

我的目标是运行一个线程,直到信标肯定超出范围 - 换句话说,我希望通过iBeacon集成确保应用程序的高可靠性 .

有什么建议?我错过了什么吗?

非常感谢您的任何见解!

问候,

1 回答

  • 3

    所描述的问题通常发生在没有足够频繁广告的信标上 . 标准iBeacon每100 ms(10 Hz)发送一次 . 许多灯塔制造商试图通过减慢广告来减少电池寿命,远远低于此标准 .

    Android Beacon Library旨在与每1000毫秒(1赫兹)广告的信标一起正常工作 . 它具有1.1秒的扫描周期,使得检测每1秒或更长时间发送的信标的概率很高 .

    但是一些制造商声称通过将传输速率降低到每5秒或更短一次来延长电池寿命 . 这将导致所描述的确切症状,因为库将间歇性地无法检测到信标,导致虚假退出并输入事件 .

    要解决此问题,请查阅信标的文档,并将其配置为每秒至少传输一次或更快 .

相关问题