是否在相同的 BLE 扫描中收到信标监视和测距回调

Posted

技术标签:

【中文标题】是否在相同的 BLE 扫描中收到信标监视和测距回调【英文标题】:Are Beacons monitoring and ranging callbacks received in same BLE scans 【发布时间】:2018-04-19 10:25:58 【问题描述】:

据我了解,当某个区域在您的扫描附近变得可见时,监控会为您提供信息(使用 regionentered、regionexit 等回调),然后测距会为您提供有关该区域信标的信息。

所以屏幕后面是相同的蓝牙扫描足以调用两个回调?或者我们需要为每个开始单独的扫描?

【问题讨论】:

【参考方案1】:

理论上,一次扫描就足以完成所有这些工作。扫描回调提供了足够的信息来计算信标区域/范围。 (您可以使用库或为此编写自己的算法。)

但实际上,该应用需要重新启动单独的扫描,以保护您设备上的蓝牙堆栈。如果您长时间运行一次蓝牙扫描,则会出现相当多的设备特定问题。定期重新启动扫描将显着提高某些设备的稳定性。

【讨论】:

我没有完全理解重启扫描部分。如果您能详细说明它,那就太好了。并假设这仅适用于 android,因为在 ios 中我们无法进行测距,直到收到监控回调?

以上是关于是否在相同的 BLE 扫描中收到信标监视和测距回调的主要内容,如果未能解决你的问题,请参考以下文章

在iOS中测距和监控时如何获取信标的MAC地址

我们可以监视和测距未知的信标吗?

在 BLE 中随机化 Mac 地址

在对iBeacons进行测距和监控之后,蓝牙设备无法连接,直到重置蓝牙

BLE 扫描回调的类加载期间的 NoClassDefFoundError

是否可以使用支持 BLE 的 Android/iPhone 作为 BLE 信标?