寻找有关蓝牙 LE "Indicate" 行为的信息

Looking for Information on the Bluetooth LE "Indicate" Behavior

我正在研究 a Bluetooth LE project,进展顺利。

不过,我现在支持a Kiwi device,规则有点变化。

以前,我会在特定于供应商的 GATT 特性上使用 BLE 读取和 BLE 写入属性的各种组合,但我认为 Kiwi 可能会使用 Indicate 属性。

我几乎找不到关于 Indicate 以及如何使用它的文档。 Apple 似乎没有在他们的文档中提及它,蓝牙规范也几乎没有提到它。

我一定是错过了 属性 上的文档,以及它与阅读的不同之处。从阅读它的(非常短的)宣传语来看,它听起来就像阅读一样,但我对 Kiwi 设备的探索似乎并不支持它。

我知道这是一个有点 "open-ended" 的问题,但我需要了解有关 Indicate 的更多信息,以及它在 CoreBluetooth 中的支持方式。

如果有任何指点,我将不胜感激。我只需要一点我可以遵循的面包屑路径。

谢谢!

IndicateNotify类似;当外设更改该值时,它们会向中央提供新的特征值,而中央无需执行低效轮询。蓝牙层的不同之处在于,中央需要向外围设备确认收到 Indicate,而使用 Notify 则不会发生此类确认。

由于 Core Bluetooth 框架从您的应用程序中抽象出底层蓝牙堆栈,因此您无需担心 IndicateNotify[=20 之间的区别=] - 核心蓝牙为您处理。