在浏览文档和大多数BTLE和CB stackoverflow问题之后,我已经达到了极限。
我正在做一个应该与BT 4.0设备通信的iOS应用程序。询问数据,并接收特定数据。
例如,该设备的文档说:
请求:
数据
启动1“d”读取日志命令代码
逗号1“,”逗号
边1“l”或“r”
逗号1“,”逗号
图1“0”,“1”或“2”
逗号1“,”逗号
结束1;命令结束字符
响应:
启动1“d”读取日志数据命令代码
逗号1“,”逗号
边1“l”或“r”
逗号1“,”逗号
图1“0”,“1”或“2”
逗号1“,”逗号
结束1;命令结束字符
已经使用相同应用程序的Android开发人员说:“我正在将字符串转换为字节大小,使用ASCII并将其发送到BT适配器”。 嗯,听起来不错。但是当我们必须使用CoreBluetooth时它是如何工作的?
至于现在我建立了两个设备,iPad和iPhone之间的连接,我基本上理解它是如何工作的,但仍然不知道如何以及在何处发送这些字节串。
任何暗示,想法,任何人都有这样的经历吗?
答案 0 :(得分:3)
试试这个:
[yourConnectedPeripheral writeValue:[yourString dataUsingEncoding:NSUTF8StringEncoding] forCharacteristic:theCharacteristicToWrite type:CBCharacteristicWriteWithResponse];
要写,你必须使用NSData,这就是为什么有dataUsingEncoding
(注意你可以改变编码,如果它与Android应用程序不一样),并{{1}你将会知道它是在委托方法CBCharacteristicWithResponse