读取制造商数据BLE设备反应本地BLE plx



嗨,我需要使用React native进行BLE集成。

我正在使用此程序包:https://polidea.github.io/react-native-ble-plx/

我已经成功地搜索了一个BLE设备,现在我需要读取它的制造商数据并检查一些值

问题:我正在获取字符串(Base64(格式的制造商数据,并用以下代码转换为字节数组。

convertStringToByteArray(str) {
String.prototype.encodeHex = function () {
var bytes = [];
for (var i = 0; i < this.length; ++i) {
bytes.push(this.charCodeAt(i));
}
return bytes;
};

var byteArray = str.encodeHex();
return byteArray
}

其结果如下。

[xx, xx, xx, xx, xx, xx, xx, xx]

我不知道该怎么办。

在本机iOS中,我得到苹果自己提供的DATA格式的输出。不知道如何在这个中处理

要求我需要转换子范围2.<3到Uint8,并检查Uint8结果是否包含一些整数

有人能帮我解析这些数据吗?

使用缓冲区js库,可以使用以下片段实现:

var Buffer = require('buffer/').Buffer

const strval = "base-64-encoded-string";
const buffer = new Buffer(strval, 'base64');
const bufStr = buffer.toString('hex'); //make sure to encode it as 'hex' and not 'string'

发现解决方案字符串是base64编码的,我必须先解码字符串,然后转换为字节数组

最新更新