【问题标题】:Does iOS scan beacon even if bluetooth is off即使蓝牙关闭,iOS 也会扫描信标
【发布时间】:2021-01-15 03:04:55
【问题描述】:

我正在开发与 iBeacon 交互的应用程序。我已经看到即使蓝牙关闭,我的应用也能够检测到 iBeacon。我找不到有关此行为的任何文档。任何人都可以分享官方的判决/文件,幕后究竟发生了什么?

谢谢

【问题讨论】:

    标签: ios bluetooth ibeacon


    【解决方案1】:

    当您点击控制中心中的蓝牙图标将其“关闭”时,图标会从蓝色变为灰色,但这不会关闭蓝牙。它只是禁用蓝牙连接,同时允许 iBeacon 扫描并继续扫描其他蓝牙设备。

    您可以通过在控制中心将蓝牙图标转到关闭位置来验证这一点,如下所示:

    然后深入设置以查看蓝牙开关仍处于启用状态,但下方的连接现在已禁用。

    你无法检测手机是否处于这种状态,但是如果你的应用在手机处于这种状态时构造了一个新的CBCentralManager,iOS会自动弹出这样一个对话框:

    如果您没有使用 CBCentralManager,那么手机是否处于此状态没有任何区别——您可以扫描其他设备(使用 CoreLocation 的 iBeacon 或使用 CoreBluetooth 的非 iBeacon 蓝牙设备)相同无论手机是否处于此模式。

    【讨论】:

    • 感谢@David,这是有道理的。我们可以从代码中确定这一点吗?那是蓝牙能够检测到iBeacon吗?即使蓝牙从控制中心关闭。
    • 查看我编辑的答案。无论是否处于这种状态,您都可以检测到 iBeacon。
    • 不,当蓝牙从设置中关闭时,它不会检测到 iBeacon
    • 这是预期的:“不,当蓝牙从设置中关闭时,它不会检测到 iBeacon”。它只会检测何时从控制中心关闭,而不是设置。
    • 那么有什么方法可以(以编程方式)知道或区分蓝牙是否从控制中心或设置中关闭?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-03
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多