说明:本地真机调试完全正常,但是打包成app后就出问题了。
描述:蓝牙设备初始化正常,uni.getBluetoothAdapterState 检测 状态正常,到 uni.startBluetoothDevicesDiscovery 搜索这一步就卡起了,求解
openBluetoothAdapter () {
var _this = this
uni.openBluetoothAdapter({
complete (e) {
if (!e.errCode) {
_this.msgList.push('蓝牙初始化完成');
} else if (e.errCode == 10001) {
uni.showToast({
icon: 'none',
title: '请打开手机蓝牙'
})
} else {
uni.showToast({
icon: 'none',
title: e.errMsg
})
}
}
})
},
// 开始搜寻附近的蓝牙外围设备
discoveryPrinter () {
var _this = this;
_this.devices = [];
uni.getBluetoothAdapterState({
success(res) {
_this.msgList.push('蓝牙正常');
},
fail(res){
_this.msgList.push('设备异常');
}
})
uni.startBluetoothDevicesDiscovery({
success(e) {
_this.msgList.push('成功搜索外围设备');
if (e.errMsg == "startBluetoothDevicesDiscovery:ok") {
setTimeout(()=>{
uni.getBluetoothDevices({
success: function(res) {
_this.msgList.push('获取已成功配对设备列表成功');
var devices = [];
var num = 0;
for (var i = 0; i < res.devices.length; ++i) {
if (res.devices[i].name != "未知设备") {
devices[num] = res.devices[i];
num++;
}
}
_this.msgList.push(JSON.stringify(devices));
_this.devices=devices;
console.log("停止搜索蓝牙");
// 将发现的蓝牙设备存储起来,以下代码仅供参考
/* that.setData({
list: devices,
isScanning: false
}); */
uni.hideLoading();
uni.stopPullDownRefresh();
uni.stopBluetoothDevicesDiscovery({
success: function(res) {
console.log("停止搜索蓝牙");
}
});
},
fail:function(res) {
_this.msgList.push('获取已成功配对设备列表失败');
},
complete:function(res){
_this.msgList.push('获取已成功配对设备列表完成');
}
});
},1500)
// ArrayBuffer转16进度字符串示例
uni.onBluetoothDeviceFound(devices => {
//console.log(devices)
//_this.devices.push(devices.devices[0]);
})
}else{
uni.showToast({
icon:'none',
title:'暂未发现设备'
})
}
},
fail(e) {
_this.msgList.push('获取已成功配对设备列表失败');
uni.showToast({
icon:'none',
title:'搜索设备失败,请检查蓝牙是否开启'
})
},
})
},
1 个回复
8***@qq.com
我也是,直接报10002了,个别的手机可以,个别的不行。烦