console.log("共【"+length+"】次第【" + i + "】次写数据"+data)
var buffer = new ArrayBuffer(data.length)
var dataView = new DataView(buffer)
for (var j = 0; j < data.length; j++) {
dataView.setUint8(j, data[j]);
}
uni.writeBLECharacteristicValue({
deviceId,
serviceId,
characteristicId,
value: buffer,
success(res) {
console.log('打印成功')
console.log(deviceId+'/'+serviceId+'/'+characteristicId);
realWriteData(sendloop, i + 1);
},
fail(err) {
uni.showModal({
title: '打印错误!',
content: JSON.stringify(err),
showCancel: false
});
console.log('打印失败')
console.log(deviceId+'/'+serviceId+'/'+characteristicId);
}
})
- 发布:2021-06-19 15:19
- 更新:2023-06-27 15:56
- 阅读:1532
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 3.1.18
手机系统: Android
手机系统版本号: Android 11
手机厂商: 小米
手机机型: mi10
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
连接蓝牙打印机,点击打印测试
连接蓝牙打印机,点击打印测试
预期结果:
正常打印
正常打印
实际结果:
有几率 uni.writeBLECharacteristicValue 报 10007
有几率 uni.writeBLECharacteristicValue 报 10007
bug描述:
连接蓝牙打印机,获取到服务和特征码后,调用uni.writeBLECharacteristicValue发送打印命令,此处有 将命令分割和递归的操作。
递归打印时,设备id、服务id和特征码参数不变,但是有几率报 10007 bug;再次重新打印,会恢复。