从蓝牙外围设备读取数据时遇到一些问题。我们有一个具有以下 gatt 详细信息的蓝牙设备。
<service uuid="service id" advertise="true">
<description>XXXX service</description>
<characteristic uuid="characteristic id" id="xgatt_data">
<description>Data</description>
<properties write="true" indicate="true" />
<value variable_length="true" length="20" type="user" />
</characteristic>
</service>
我正在做的是
- 搜索具有“服务 ID”的外围设备
- 找到后连接到外围设备并保持对其的强引用。
- 连接设置委托并搜索它提供的所有服务后
- 一旦我们发现服务,循环所有服务并扫描特征
- 在我找到所需的特征后,我正在启用通知
- 单击按钮时,我正在将数据写入特征
我能够连接到设备。我也可以向外围设备发送命令(数据)。一旦我们向设备发送任何命令,它就会发送一些数据作为响应。我可以在设备上看到日志,一旦收到任何命令,它就会发回一些数据。但是在我的 iOS 设备中,我无法通过使用通知或普通读取功能来读取数据。我在这里缺少什么?