轨道已开
轨道已开
  • 发布:2019-01-02 12:00
  • 更新:2019-11-14 14:17
  • 阅读:1847

调用android蓝牙接口outputStream.write写入数据如何解决数据大于127的问题

分类:Native.js

var str = '06 03 00 00 00 01 85 BD';
var arr = str.split(" ");
var arrSend = [];
for (var i = 0; i < arr.length; i++)
{

arrSend[i] = parseInt(arr[i], 16)&0xff;//bytes[0];// parseInt(arr[i], 16)&0xff;  

}

_ble.sendData(arrSend);

ble.sendData = function(info) {

        if (outputStream == null) return 1;  

//

        var len = info.length;  
        for( var i=0; i<len; i++ )  
        {  
            outputStream.write(info[i]&0xff);  
        }  
        outputStream.flush();  

//
}

2019-01-02 12:00 负责人:无 分享
已邀请:
DoublePD

DoublePD

我也遇到这个问题 查了半天资料才找到原因: java bytes 是带符号的-127~126
所以大于127要-256 比如255对应的有符号是-1

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