android - BLE设备读取特征值的Arraybuffer如何取值

标签 android ios angular ionic2

我已经阅读了 IONIC 2 的文档,它是 https://ionicframework.com/docs/v2/native/ble/ .从那里给出了 arraybuffer 到 string 的转换,这对我不起作用。如图image

如何从读取特征数据中获取固件版本作为 IONIC 2 的 Arraybuffer 转换代码,它是: 函数 bytesToString(缓冲区){ 返回 String.fromCharCode.apply(null, new Uint8Array(buffer)); 不适合我。使用该代码,我得到了输出:îÍy}ùt。我是 ionic 的新手。我的字节传输顺序最低有效八位字节在前(即小字节序)。请给我转换解决方案。谢谢。

最佳答案

我也在使用 bytesToString 并且在我这样做之后也得到了 ascii 的值:

var convertData = bytesToString(result);
var hexResult = [];

for (var i=0; i < convertData.length; i++){
   var resultNumber = convertData.charCodeAt(i);   //Dec
   var resultString = ("00" + (+resultNumber).toString(16)).substr(-2); //String
   hexResult[i] = "0x" + resultString;
}

我想要十六进制,所以我做了 toString(16)。您可以相应地进行更改并尝试一下。

让我知道这是否有效!

关于android - BLE设备读取特征值的Arraybuffer如何取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42245849/

相关文章:

android - Kotlin 集合在 Android 上抛出 ClassNotFoundException

android - 被父级拦截后将 TouchEvent 调度到 Listview

ios - 如何将图像放入 Realm 数据库?

Angular 2 -> 如何使用 FormGroup 隐藏控件

angular - 如何使用 Jasmine 对 Promise catch 进行单元测试

android连接到互联网事件

android - 为什么恢复交易(应用内结算)返回未签名的数据?

ios - 如何将异常转换为 NSError 对象

ios - XCode 5.1 Beta 4无法识别iOS 7.1 Beta 4测试设备

svg - Angular2 Svg 文本属性绑定(bind)