在 AltBeacon 库中,我看到 iBeacons 每秒刷新多次的原因是什么?
In the AltBeacon library what is the reason I see iBeacons refresh multiple times a second?
我正在使用参考 Altbeacon android 应用程序(当前)来了解 ibeacons。
听说过"RangedBeacon.setSampleExpirationMilliseconds"这个值,默认是20秒,monitor版本好像默认是10秒
那么,为什么我每秒多次看到我所有 iBeacon 的刷新数据 (RSSI)?这主要是在测距屏幕上,我注意到它像疯了一样滚动。我只有3个信标。
这是否意味着我的间隔设置低于默认值?或者这是否发生在其他地方?有什么方法可以减慢刷新速度,这是否有助于节省电量?
TIA!
Android Beacon Library的RangedBeacon.setSampleExpirationMilliseconds()
方法与测距更新的频率无关。它用于配置平均距离估计的时间间隔。 RSSI(接收信号强度指示器)是衡量移动设备和信标之间信号强度的指标,用作估计距离的输入。由于此测量由于无线电噪声而固有地不稳定,因此使用 运行 平均值来消除此噪声。默认情况下,此 运行 平均值的间隔为 20 秒。由于此默认值可能不适合需要较少 "lag" 估计移动设备和信标之间距离的应用程序,因此库允许将其配置为不同的时间段。
默认测距刷新间隔由不同的scanPeriod
和betweenScanPeriod
设置控制,默认分别为1.1秒和0秒。默认值表示库将扫描 1.1 秒,然后停止扫描 0 秒,然后再次开始扫描。您可以通过调用 beaconManager.setForegroundScanPeriod(long milliseconds)
和 beaconManager.setForegroundBetweenScanPeriod(long milliseconds)
来调整这些默认值(当您的应用程序处于后台时,这些方法也有后台等效项,默认分别为 10 秒和 300 秒。)
如果您想节省电量,那么您要做的就是将 betweenScanPeriod
调整为更长的值。但同样,当您的应用程序处于后台时,库已经将其调整为 5 分钟。您可以阅读有关此节电功能的更多信息 here.
我正在使用参考 Altbeacon android 应用程序(当前)来了解 ibeacons。
听说过"RangedBeacon.setSampleExpirationMilliseconds"这个值,默认是20秒,monitor版本好像默认是10秒
那么,为什么我每秒多次看到我所有 iBeacon 的刷新数据 (RSSI)?这主要是在测距屏幕上,我注意到它像疯了一样滚动。我只有3个信标。
这是否意味着我的间隔设置低于默认值?或者这是否发生在其他地方?有什么方法可以减慢刷新速度,这是否有助于节省电量?
TIA!
Android Beacon Library的RangedBeacon.setSampleExpirationMilliseconds()
方法与测距更新的频率无关。它用于配置平均距离估计的时间间隔。 RSSI(接收信号强度指示器)是衡量移动设备和信标之间信号强度的指标,用作估计距离的输入。由于此测量由于无线电噪声而固有地不稳定,因此使用 运行 平均值来消除此噪声。默认情况下,此 运行 平均值的间隔为 20 秒。由于此默认值可能不适合需要较少 "lag" 估计移动设备和信标之间距离的应用程序,因此库允许将其配置为不同的时间段。
默认测距刷新间隔由不同的scanPeriod
和betweenScanPeriod
设置控制,默认分别为1.1秒和0秒。默认值表示库将扫描 1.1 秒,然后停止扫描 0 秒,然后再次开始扫描。您可以通过调用 beaconManager.setForegroundScanPeriod(long milliseconds)
和 beaconManager.setForegroundBetweenScanPeriod(long milliseconds)
来调整这些默认值(当您的应用程序处于后台时,这些方法也有后台等效项,默认分别为 10 秒和 300 秒。)
如果您想节省电量,那么您要做的就是将 betweenScanPeriod
调整为更长的值。但同样,当您的应用程序处于后台时,库已经将其调整为 5 分钟。您可以阅读有关此节电功能的更多信息 here.