【发布时间】:2021-01-15 03:04:55
【问题描述】:
我正在开发与 iBeacon 交互的应用程序。我已经看到即使蓝牙关闭,我的应用也能够检测到 iBeacon。我找不到有关此行为的任何文档。任何人都可以分享官方的判决/文件,幕后究竟发生了什么?
谢谢
【问题讨论】:
我正在开发与 iBeacon 交互的应用程序。我已经看到即使蓝牙关闭,我的应用也能够检测到 iBeacon。我找不到有关此行为的任何文档。任何人都可以分享官方的判决/文件,幕后究竟发生了什么?
谢谢
【问题讨论】:
当您点击控制中心中的蓝牙图标将其“关闭”时,图标会从蓝色变为灰色,但这不会关闭蓝牙。它只是禁用蓝牙连接,同时允许 iBeacon 扫描并继续扫描其他蓝牙设备。
您可以通过在控制中心将蓝牙图标转到关闭位置来验证这一点,如下所示:
然后深入设置以查看蓝牙开关仍处于启用状态,但下方的连接现在已禁用。
你无法检测手机是否处于这种状态,但是如果你的应用在手机处于这种状态时构造了一个新的CBCentralManager,iOS会自动弹出这样一个对话框:
如果您没有使用 CBCentralManager,那么手机是否处于此状态没有任何区别——您可以扫描其他设备(使用 CoreLocation 的 iBeacon 或使用 CoreBluetooth 的非 iBeacon 蓝牙设备)相同无论手机是否处于此模式。
【讨论】: