首页 > 解决方案 > 如何在 iOS 中向蓝牙 LE 发送数据

问题描述

我是蓝牙通信的新手。我的任务是用 commonand 将数据写入蓝牙。共同点是0x61,我需要将01-02-03-044 字节值传递给它。我已经认出了特点。

我想在 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)")
                        }
                    })

标签: iosiphoneswiftbluetooth-lowenergyswift4

解决方案


您拥有的代码将发送代表字符串的字节"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)")
    }
})

推荐阅读