jsptop
jsptop
  • 发布:2016-02-02 12:05
  • 更新:2018-04-04 11:18
  • 阅读:1504

读取蓝牙设备数据的时候,发现了一个奇怪的问题,难道是SDK的BUG??

分类:Native.js

var inputStream = bluetoothSocket.getInputStream();
inputStream .read(Buffer);

如上代码在调用bluetoothSocket.getInputStream()的.read(Buffer)时候不能获取数据,提示出错。
经过修改发现直接 var data = inputStream .read();可以读出数据,返回为int类型数据,
经过对比,发现返回的数据如果大于一个字节 ,即int数值大于127 返回的数据则是不对的数据

对比如下
真是数据:[187 ,2,34,0,14,48,0,0,0,0,0,0,0,32,21,8,37,0,7,126,160,217]
返回数据:[1659,2,34,0,14,48,0,0,0,0,0,0,0,32,21,8,37,0,7,126,65533]

测试了很多遍,发现不但数据不对,数据的数量也少了,不知是BUG,还是需要做什么特殊处理,望官方或者知情人告知??

2016-02-02 12:05 负责人:无 分享
已邀请:
2***@qq.com

2***@qq.com - 2276375156

楼主问题解决了吗,你怎么处理read()阻塞主线程的问题

w***@126.com

w***@126.com

http://ask.dcloud.net.cn/article/66 可以参考这个文档,在安卓层面读取蓝牙设备信息

该问题目前已经被锁定, 无法添加新回复