【问题标题】:Bluetooth Low Energy advertising to be discoverable in iOS Settings在 iOS 设置中可发现低功耗蓝牙广告
【发布时间】:2015-01-28 11:10:30
【问题描述】:

我有一个 iOS 应用程序,它使用 CBPeripheralManager 来实现外围设备。 我开始用命令做广告:

 [self.peripheralManager startAdvertising:@{CBAdvertisementDataLocalNameKey : @"MY_DEVICE_NAME"}];

根据 Apple 文档,https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/CBPeripheralManager_Class/index.html#//apple_ref/occ/instm/CBPeripheralManager/startAdvertising

外围管理器对象仅支持其中两个键:CBAdvertisementDataLocalNameKey 和 CBAdvertisementDataServiceUUIDsKey

我的问题是我希望在 iOS 设置的“设置”->“蓝牙”区域中可以发现此外围设备。 目前只能通过应用程序和 CBCentralManager scanForPeripheralsWithServices API 调用来发现它。 我是否需要添加数据服务才能通过 iOS 设置发现它?

【问题讨论】:

    标签: ios bluetooth-lowenergy core-bluetooth


    【解决方案1】:

    在“设置”->“蓝牙”页面中找不到蓝牙低功耗设备。这仅适用于蓝牙 2.1/3.0 设备,例如键盘和耳机/免提设备。

    只有使用核心蓝牙的应用才能发现低功耗蓝牙外围设备。

    【讨论】:

    • 感谢您的快速回答,知道记录在哪里吗?
    • 我不知道它记录在哪里,但它是合乎逻辑的 - iOS 不能对 BLE GATT 外围设备做任何事情 - 你需要一个可以与外围设备一起工作的应用程序。为什么要在设置应用中发现您的外围设备?
    • 我们有一个请求 ANCS 的 BLE 设备,因此在 iOS 设置中可见。但我们也想通过服务连接到它。目前这使得 UseEx 很尴尬,因为一些配对是在应用程序内完成的,一些是在 iOS 设置中完成的。我们希望所有配对都在一个或另一个中完成,理想情况下是为了简单而不是在自定义应用程序中。
    • 即使在设置中配对,您也需要通过一些 UI 在您的应用中发现并选择外围设备 - 否则您将如何知道用户想要哪个外围设备
    • 因为设备有自定义服务 UUID。 1)用户通过设置连接,然后 2)用户运行应用程序,该应用程序通过查找具有该服务的设备来检索该设备。当然,如果用户在设置中连接到 2 个相同的设备,那么他就无法区分它们。但随后“帮助”说明会向用户解释这是一个坏主意,并且每部 iPhone 只允许使用一台设备。
    猜你喜欢
    • 2019-02-21
    • 2013-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    相关资源
    最近更新 更多