-
安卓微信小程序 发送打印指令 代码显示打印成功 打印机没有响应 苹果的可以正常使用
安卓小程序发送指令代码显示发送指令成功 打印机不响应
function writeBLEValue(arrayBuffer){
console.log(serviceId)
console.log(writeCharacteristic)
if(!serviceId || ! writeCharacteristic){
wx.hideLoading()
wx.showToast({
title: "传输数据失败",
image: "src/icon_fail.png"
})
return
}
let count = arrayBuffer.byteLength
if (count > maxBit)
{
let leftArrayBuffer = arrayBuffer.slice(maxBit)
try{
wx.writeBLECharacteristicValue
({
deviceId: connectedDeviceId,
serviceId: serviceId,
characteristicId: writeCharacteristic,
value: arrayBuffer.slice(0, maxBit),
success: function (res) {
// console.log("分部传输中")
writeBLEValue(leftArrayBuffer)
},
fail:function(e){
console.log(e)
wx.hideLoading()
wx.showToast({
title: "传输数据失败",
image: "src/icon_fail.png"
})
}
})
}
catch (err) {
wx.showToast({
title: "传输数据失败",
image: "src/icon_fail.png"
})
}
}else
{
try{
// console.log("最后一部分")
wx.writeBLECharacteristicValue
({
deviceId: connectedDeviceId,
serviceId: serviceId,
characteristicId: writeCharacteristic,
value: arrayBuffer,
success: function (res) {
console.log("打印成功")
console.log(res)
wx.hideLoading()
},
fail: function (e) {
console.log(e)
wx.hideLoading()
wx.showToast({
title: "传输数据失败",
image: "src/icon_fail.png"
})
}
})
}
catch(err){
wx.showToast({
title: "传输数据失败",
image: "src/icon_fail.png"
})
}
}
glbCmd = ""
_currentBold = -1
_currentFont = -1
}
这个问题解决了吗?遇到同样问题了
问题的关键就是字节要设为20。不然安卓上数据会过大接收不了
为啥返回都成功了,打印机没反应的
楼主这个问题解决了吗
我也是碰到这种情况,奇怪了,苹果都没问题,安卓的没有使用wepy的小程序可以,使用wepy的不行,但是wx.writeBLECharacteristicValue都是成功了的,参数看了也没问题
大神 方便把代码发过来 看看吗 1006260688@qq.com
一样的代码呀,都是调用
wx.writeBLECharacteristicValue
这个问题好久了,你用安卓好歹打印成功过,我用安卓手机打印从来没有响应过
我发现好像是ArrayBuffer太长了导致的。。。
你的可以了吗?我试了下,改小也还是没反应...
你好,麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点
微信号 jj1006260688 时间点 14 点07左右 日志已上传
试试原生ble接口是否能成功?