信标扫描检测中的不规则

时间:2017-07-12 18:13:04

标签: ibeacon-android android-ibeacon eddystone

我一直在使用Android Beacon Library在Android中测试我的Beacon探测器应用程序的电池消耗。我设置的配置是 -

1)背景扫描速率 - 110 ms 2)扫描速率之间的背景 - 10000ms 3)前景扫描速率 - 110ms 4)扫描速率之间的前景 - 10000ms 5)信标发射广告率 - 低延迟(10 Hz) 6)没有使用省电等级 7)检测Eddystone UID信标

我已经使用其他信标(均以相同的10 Hz频率发射)测试了此配置16小时。

电池消耗量是我预期的,但信标检测频率是我不明白的。有些时间段很少发现信标。 我观察了两个阶段 - 1)1小时的时间段内有大约400次检测 2)2小时期间,大约有12-15次检测

这发生在周期中。 可能是什么原因? 它是否与Android 5.0新扫描API相关? 有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

如此短的110ms扫描周期,是否检测到以10 Hz发射的信标的一个重要因素将是时间和运气。

考虑一下:

  • 开始扫描需要有限的时间,因此有效扫描周期可能<1。 100ms的
  • 信标数据包通过空中传输需要一定的时间,如果在传输过程中未开始扫描(或停止),则无法进行检测。
  • 信标发射器不会定期发送数据包。当蓝牙发射器跳过通道时,它们往往聚集在一起或不规则地间隔开。
  • 即使在最好的情况下,扫描仍然不断停止,只有约90%的数据包被接收。

将所有因素加在一起,看到检测到的数据包数量存在很大差异,我并不感到惊讶。控制之外的变量太多,无法使其可预测。如果你想要更多的可预测性,我会将扫描周期延长至少1秒。