【发布时间】:2017-01-12 21:39:05
【问题描述】:
我在我的应用程序中使用 AltBeacon 库,并且仅每隔几分钟运行一次扫描,无论是前台还是后台。不过,我真的很想知道扫描何时完成,因为我也想偶尔扫描非 LE 蓝牙设备。我看到有一个名为“onCycleEnd”的事件,这似乎是我正在寻找的,但我无法弄清楚当该事件触发时我如何(或是否)可以处理它。
有什么办法可以做到吗?
【问题讨论】:
标签: android ibeacon-android altbeacon
我在我的应用程序中使用 AltBeacon 库,并且仅每隔几分钟运行一次扫描,无论是前台还是后台。不过,我真的很想知道扫描何时完成,因为我也想偶尔扫描非 LE 蓝牙设备。我看到有一个名为“onCycleEnd”的事件,这似乎是我正在寻找的,但我无法弄清楚当该事件触发时我如何(或是否)可以处理它。
有什么办法可以做到吗?
【问题讨论】:
标签: android ibeacon-android altbeacon
当循环结束时,didRangeBeaconsInRegion 触发。您应该能够在该回调上触发任何必要的逻辑。
【讨论】:
BluetoothAdapter#startDiscovery(),它将启动“经典”蓝牙扫描以查找非LE设备。我认为您没有任何理由需要确保这不会在蓝牙 LE 扫描的同时进行。但是为了阐明 Android Beacon Library 在前台的工作方式,一旦它停止了一次 LE 扫描,它就会立即开始下一次扫描。在后台,它会在旧操作系统版本的扫描之间暂停,并在较新的操作系统版本上保持一次较长的低功耗扫描。