【问题标题】:HID service not visibleHID 服务不可见
【发布时间】:2018-01-25 23:31:48
【问题描述】:

我正在开发一个通过 BLE 连接到设备的 Swift 应用 (iOS)。

我编写了一些代码,设法连接到我的设备,设法获取广告数据,但是当我使用 didDiscoverServices 方法扫描服务时,我只获得电池和设备信息服务,而不是 HID 服务。 我可以在广告数据中看到设备信息、电池和 HID 服务,但在 didDiscoverServices 方法中看不到。 我可以在 didDiscoverServices 方法中访问电池和设备信息的特征。 我在多个地方读到 HID 由 iOS 而非应用程序管理。

有什么方法可以访问 HID 服务吗?

【问题讨论】:

    标签: ios swift bluetooth-lowenergy hid gatt


    【解决方案1】:

    很遗憾,无法访问此服务。 Apple 会主动过滤某些 BLE 服务,因此您无法通过 CoreBluetooth API 访问它们。特别是,HID over Gatt 服务由系统维护,因此您可以使用您的设备输入文本等,但您将无法拦截应用程序中的任何事件。

    上述过滤也适用于外围角色。如果您尝试将 HID over Gatt UUID 作为新服务添加到 CBPeripheralManager,您将收到错误消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 2014-05-06
      • 1970-01-01
      • 2020-05-25
      相关资源
      最近更新 更多