|
initBlue() {//初始化
var that = this;
var ble = api.require('ble');
ble.initManager(function (ret, err) {
alert(ret.state)
if (ret) {
switch (ret.state) {
case 'poweredOn':
alert('蓝牙设备是开启状态');
that.scanBlue();
break;
case 'poweredOff':
alert('蓝牙设备是关闭状态');
break;
case 'resetting':
alert('正在重置状态');
break;
case 'unauthorized':
alert('设备未授权状态');
break;
case 'unknown':
alert('初始未知');
break;
case 'unsupported':
alert('设备不支持的状态');
break;
}
}
if (err) {
toast('蓝牙初始化失败' + err.code + ':' + err.msg);
}
});
},
scanBlue() {//3开始搜索蓝牙4.0设备
alert('scanBlue');
var that = this;
var ble = api.require('ble');
ble.scan({
// serviceUUIDs: ['', '']
}, function (ret, err) {
if (ret.status) {
alert('正在搜索蓝牙设备');
that.getBlueInfo();
} else {
alert('搜索设备失败!' + err.code + ':' + err.msg);
}
});
},
getBlueInfo() {//4获取当前扫描到的所有外围设备信息
alert('getBlueInfo');
var that = this;
var ble = api.require('ble');
ble.getPeripheral(function (ret, err) {
if (ret.peripherals.length != 0) {
alert('获取到设备信息');
alert(JSON.stringify(ret.peripherals))
var blueUuid = ret.peripherals[0].uuid;
alert('设备信息' + blueUuid);
that.connectBlue(blueUuid);
} else {
alert('没有获取到任何设备信息');
}
if (err) {
alert('设备信息失败!' + err.code + ':' + err.msg);
}
});
},
方法2中的scan完全搜索不到蓝牙信号,以至于方法3也获取不到设备信息,最后alert出来的是“没有获取到任何设备信息”能帮我看下,这是为什么吗? |
|