ios - 如何在 iOS 中向蓝牙 LE 发送数据
问题描述
我是蓝牙通信的新手。我的任务是用 commonand 将数据写入蓝牙。共同点是0x61
,我需要将01-02-03-04
4 字节值传递给它。我已经认出了特点。
我想在 swift 4 中回答。
let string = "0xB101020304"
let _data = string.data(using: String.Encoding.utf8)
self.peripheral?.writeValue(ofCharac: ser, value: _data!, completion: { (reult) in
switch result{
case .success(let value):
print(value)
print("wow")
case .failure(let error):
print("error: \(error.localizedDescription)")
}
})
解决方案
您拥有的代码将发送代表字符串的字节"0xB101020304"
,但大概您想要发送字节 B1 01 02 03 04。
let dataBytes:[UInt8] = [0xB1,0x01,0x02,0x03,0x04]
let data = Data(bytes: dataBytes)
self.peripheral?.writeValue(ofCharac: ser, value: data, completion: { (result) in
switch result {
case .success(let value):
print(value)
print("wow")
case .failure(let error):
print("error: \(error.localizedDescription)")
}
})
推荐阅读
- node.js - 如何在 UI 中显示异步数据
- java - 使用 Linkedin Spring Boot Rest api 登录
- r - 过滤掉所有值都等于 1 的列
- sbt - 多个模拟的聚合加特林报告
- python - lxml.etree.parser() 和 lxml.etree.fromstring() 的默认解析器是什么
- spring - 如何在后端使用 gRPC 为 Spring 微服务创建前端?
- android - io.reactivex.exceptions.UndeliverableException:java.lang.StackOverflowError
- typescript - tslint - 在使用全局和内联 npm 脚本之间得到不同的结果
- android - 更改 recyclerview 项目的可见性会更改其他项目的可见性
- java - 如何使用 apache pdfbox api 将 PDF 的字节数组转换为 Java 中 jpg 图像的字节数组?