CoreBluetooth 与非 iOS 设备的连接
Posted
技术标签:
【中文标题】CoreBluetooth 与非 iOS 设备的连接【英文标题】:CoreBluetooth connection with non iOS device 【发布时间】:2013-05-30 10:47:36 【问题描述】:浏览文档和大多数 BTLE 和 CB *** 问题后,我已经达到了一个限制。
我正在做一个应该与 BT 4.0 设备通信的 ios 应用程序。请求数据,并接收特定数据。 该设备的文档说,例如: 要求: 数据 开始 1 "d" 读取日志命令代码 逗号 1 "," 逗号 第 1 面“l”或“r” 逗号 1 "," 逗号 图 1“0”、“1”或“2” 逗号 1 "," 逗号 结束 1 ;命令字符结束
回应: Start 1 "d" Read Log Data 命令-代码 逗号 1 "," 逗号 第 1 面“l”或“r” 逗号 1 "," 逗号 图 1“0”、“1”或“2” 逗号 1 "," 逗号 结束 1 ;命令字符结束
已经开发过相同应用程序的 android 开发人员说:“我正在使用 ASCII 将字符串转换为大字节,并将其发送到 BT 适配器”。 嗯,听起来不错。但是当我们必须使用 CoreBluetooth 时它是如何工作的呢?
至于现在我在 iPad 和 iPhone 两台设备之间建立了连接,我基本上了解它是如何工作的,但仍然不知道如何以及在哪里发送这些字节字符串。
任何提示,想法,有人经历过这样的事情吗?
【问题讨论】:
【参考方案1】:试试这个:
[yourConnectedPeripheral writeValue:[yourString dataUsingEncoding:NSUTF8StringEncoding] forCharacteristic:theCharacteristicToWrite type:CBCharacteristicWriteWithResponse];
要编写,您必须使用 NSData,这就是为什么有 dataUsingEncoding
(请注意,如果它与 Android 应用程序不同,您可以更改编码),而使用 CBCharacteristicWithResponse
,您将知道它在委托方法peripheral:didWriteValueForCharacteristic:error:
中正确写入了
【讨论】:
感谢您的建议,我一定会尝试的。如果可行,我接受你的回答:)以上是关于CoreBluetooth 与非 iOS 设备的连接的主要内容,如果未能解决你的问题,请参考以下文章
使用 CoreBluetooth 通过 iOS 设备连接到 Windows 10