嗨,我需要使用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编码的,我必须先解码字符串,然后转换为字节数组