Android Beacon Library的RangedBeacon.setSampleExpirationMilliseconds()
方法与测距更新的频率无关。它用于配置平均距离估计的时间间隔。RSSI(接收信号强度指标)是衡量移动设备和信标之间信号强度的指标,用作估计距离的输入。由于无线电噪声的存在,这种测量本质上是不稳定的,因此使用移动平均值来消除这种噪声。默认情况下,该运行平均的时间间隔为 20 秒。由于此默认值可能不适合在估计移动设备和信标之间的距离时需要较少“滞后”的应用程序,因此库允许将其配置为不同的时间段。
默认测距刷新间隔由不同的scanPeriod
和betweenScanPeriod
设置控制,默认分别为 1.1 秒和 0 秒。默认情况下,库将扫描 1.1 秒,然后停止扫描 0 秒,然后再次开始扫描。您可以通过调用beaconManager.setForegroundScanPeriod(long milliseconds)
和来调整这些默认值beaconManager.setForegroundBetweenScanPeriod(long milliseconds)
(当您的应用程序在后台时,这些方法也有等效的后台,默认分别为 10 秒和 300 秒。)
如果您想节省电池,那么您要做的就是将 调整betweenScanPeriod
为更长的值。但同样,当您的应用程序处于后台时,库已经将其调整为 5 分钟。您可以在此处阅读有关此省电功能的更多信息。