1

在浏览文档和大多数 BTLE 和 CB stackoverflow 问题后,我已经达到了极限。

我正在做一个应该与 BT 4.0 设备通信的 iOS 应用程序。请求数据,并接收特定数据。设备的文档说,例如:请求:数据
开始 1 "d" 读取日志命令代码
comma 1"," comma
Side 1 "l" or "r"
comma 1"," comma
Graph 1 "0", "1", or "2"
逗号 1 "," 逗号
End 1 ; 命令字符结束

响应: Start 1 "d" Read Log Data command-code
comma 1 "," comma
Side 1 "l" or "r"
comma 1 "," comma
Graph 1 "0", "1", or "2"
comma 1 "," 逗号
结束 1 ; 命令字符结束

已经开发了相同应用程序的 Android 开发人员说:“我正在使用 ASCII 将字符串转换为大字节,并将其发送到 BT 适配器”。嗯,听起来不错。但是当我们必须使用 CoreBluetooth 时它是如何工作的呢?

至于现在我在 iPad 和 iPhone 两台设备之间建立了连接,我基本上了解它是如何工作的,但仍然不知道如何以及在哪里发送这些字节字符串。

任何提示,想法,有人经历过这样的事情吗?

4

1 回答 1

3

尝试这个:

[yourConnectedPeripheral writeValue:[yourString dataUsingEncoding:NSUTF8StringEncoding] forCharacteristic:theCharacteristicToWrite type:CBCharacteristicWriteWithResponse];

要编写,您必须使用 NSData,这就是为什么存在dataUsingEncoding(请注意,如果它与 Android 应用程序不同,您可以更改编码),并且CBCharacteristicWithResponse您会知道它是正确写入的委托方法peripheral:didWriteValueForCharacteristic:error:

于 2013-05-30T11:47:49.220 回答