|
@@ -42,10 +42,8 @@ class BtHelper {
|
|
|
}
|
|
|
|
|
|
static _instance = new BtHelper();
|
|
|
-
|
|
|
static _isConnecting = false;
|
|
|
static isDisConnectByOTA = false;
|
|
|
-
|
|
|
// _helper;
|
|
|
|
|
|
constructor() {
|
|
@@ -74,21 +72,26 @@ class BtHelper {
|
|
|
if (device.connectType != 1 && device.state != "online") {
|
|
|
return;
|
|
|
}
|
|
|
-
|
|
|
that.handleCommand(event, device);
|
|
|
-
|
|
|
}, this)
|
|
|
}
|
|
|
|
|
|
///搜索蓝牙设备
|
|
|
- async search(stopCall) {
|
|
|
- var that = this;
|
|
|
- var res = await that.bleManager.startScan();
|
|
|
+ async search(callBack, connected) {
|
|
|
+ var that = this;
|
|
|
+ that.bleManager.startScan(
|
|
|
+ async function (c) {
|
|
|
+ callBack(c);
|
|
|
+ },
|
|
|
+ async function (c) {
|
|
|
+ connected(c);
|
|
|
+ },
|
|
|
+ );
|
|
|
// console.log("gadsfadfqwerqwerqr==444====" + res);
|
|
|
///失败
|
|
|
- if (!res) {
|
|
|
+ // if (!res) {
|
|
|
|
|
|
- }
|
|
|
+ // }
|
|
|
// that.timer = null;
|
|
|
// that.timer = setTimeout(() => {
|
|
|
// that.stopSearch();
|
|
@@ -117,18 +120,18 @@ class BtHelper {
|
|
|
mDevice.volume = volume;
|
|
|
break;
|
|
|
|
|
|
- ///电量
|
|
|
+ ///电量
|
|
|
case EnumCmdEvent.battery:
|
|
|
mDevice.kwh = event.kwh;
|
|
|
break;
|
|
|
|
|
|
- ///低时延模式 低时延模式开启 1:音乐 , 2: 游戏 , 3: movie
|
|
|
+ ///低时延模式 低时延模式开启 1:音乐 , 2: 游戏 , 3: movie
|
|
|
case EnumCmdEvent.lowDelayMode:
|
|
|
mDevice.lowDelayMode = event.lowDelayMode;
|
|
|
mDevice.lowDelayModeOpen = event.lowDelayModeOpen;
|
|
|
break;
|
|
|
|
|
|
- ///电量 耳机电量
|
|
|
+ ///电量 耳机电量
|
|
|
case EnumCmdEvent.batteryEarphone:
|
|
|
mDevice.kwh = event.kwh;
|
|
|
mDevice.kwhLeft = event.kwhLeft;
|
|
@@ -136,12 +139,12 @@ class BtHelper {
|
|
|
mDevice.kwhBox = event.kwhBox;
|
|
|
break;
|
|
|
|
|
|
- ///是否支持TTS
|
|
|
+ ///是否支持TTS
|
|
|
case EnumCmdEvent.enableTTS:
|
|
|
mDevice.enableTTS = event.enableTTS;
|
|
|
break;
|
|
|
|
|
|
- ///切换设备连接模式 0:未知 1:低功耗蓝牙 2:wifi类型 3:经典蓝牙(不做任何操作) 4:4G类型
|
|
|
+ ///切换设备连接模式 0:未知 1:低功耗蓝牙 2:wifi类型 3:经典蓝牙(不做任何操作) 4:4G类型
|
|
|
case EnumCmdEvent.switchDeviceMode:
|
|
|
var deviceMode = event.deviceMode.index;
|
|
|
if (deviceMode != null) {
|
|
@@ -150,14 +153,14 @@ class BtHelper {
|
|
|
}
|
|
|
break;
|
|
|
|
|
|
- ///4G外插卡 4G虚拟卡 当前使用的sim卡
|
|
|
+ ///4G外插卡 4G虚拟卡 当前使用的sim卡
|
|
|
case EnumCmdEvent.sim:
|
|
|
mDevice.sim = event.sim;
|
|
|
mDevice.eSim = event.eSim;
|
|
|
mDevice.simIndex = event.simIndex;
|
|
|
break;
|
|
|
|
|
|
- ///闹钟是否开启 闹钟周期 闹钟唤醒时间
|
|
|
+ ///闹钟是否开启 闹钟周期 闹钟唤醒时间
|
|
|
case EnumCmdEvent.wake:
|
|
|
mDevice.wakeSwitch = event.wakeSwitch;
|
|
|
mDevice.wakeCycle = event.wakeCycle;
|
|
@@ -165,14 +168,14 @@ class BtHelper {
|
|
|
mDevice.wakeMinutes = event.wakeMinutes;
|
|
|
break;
|
|
|
|
|
|
- ///休眠是否开启 休眠时间
|
|
|
+ ///休眠是否开启 休眠时间
|
|
|
case EnumCmdEvent.sleep:
|
|
|
mDevice.sleepSwitch = event.sleepSwitch;
|
|
|
mDevice.sleepHour = event.sleepHour;
|
|
|
mDevice.sleepMinutes = event.sleepMinutes;
|
|
|
break;
|
|
|
|
|
|
- ///版本和型号
|
|
|
+ ///版本和型号
|
|
|
case EnumCmdEvent.version:
|
|
|
mDevice.version = event.version;
|
|
|
var clientType = mDevice.clientType ?? "";
|
|
@@ -205,7 +208,7 @@ class BtHelper {
|
|
|
// }
|
|
|
break;
|
|
|
|
|
|
- ///云小微授权
|
|
|
+ ///云小微授权
|
|
|
case EnumCmdEvent.auth:
|
|
|
var authInfo = event.authInfo;
|
|
|
mDevice.authInfo = authInfo;
|
|
@@ -221,17 +224,17 @@ class BtHelper {
|
|
|
// });
|
|
|
break;
|
|
|
|
|
|
- ///EQ音效
|
|
|
+ ///EQ音效
|
|
|
case EnumCmdEvent.eq:
|
|
|
mDevice.eqs = event.eqs;
|
|
|
break;
|
|
|
|
|
|
- ///payId 充流量使用
|
|
|
+ ///payId 充流量使用
|
|
|
case EnumCmdEvent.payId:
|
|
|
mDevice.payId = event.payId;
|
|
|
break;
|
|
|
|
|
|
- ///QQ音乐使用dsn授权
|
|
|
+ ///QQ音乐使用dsn授权
|
|
|
case EnumCmdEvent.dsn:
|
|
|
var dsn = event.dsn;
|
|
|
mDevice.dsn = dsn;
|
|
@@ -240,13 +243,13 @@ class BtHelper {
|
|
|
// ProviderUtil.twelvePublic.wifiDeviceConnected();
|
|
|
break;
|
|
|
|
|
|
- ///自动切换 0,1不能
|
|
|
- ///
|
|
|
+ ///自动切换 0,1不能
|
|
|
+ ///
|
|
|
case EnumCmdEvent.netModeAuto:
|
|
|
mDevice.netModeAuto = event.netModeAuto;
|
|
|
break;
|
|
|
|
|
|
- ///解绑设备
|
|
|
+ ///解绑设备
|
|
|
case EnumCmdEvent.unbind:
|
|
|
// let unbindAddress = event.item.address ?? "";
|
|
|
// if (unbindAddress != mDevice.address) {
|
|
@@ -262,7 +265,7 @@ class BtHelper {
|
|
|
|
|
|
break;
|
|
|
|
|
|
- ///解绑设备
|
|
|
+ ///解绑设备
|
|
|
case EnumCmdEvent.ctrlStatus:
|
|
|
// List < int > ctrlList = event.ctrlStatus;
|
|
|
// if (ctrlList.length == 3) {
|
|
@@ -284,7 +287,7 @@ class BtHelper {
|
|
|
notifyListeners();
|
|
|
break;
|
|
|
|
|
|
- ///设备信息
|
|
|
+ ///设备信息
|
|
|
case EnumCmdEvent.getDeviceInfo:
|
|
|
// List list = [];
|
|
|
// String userId = ProviderUtil.user.userModel.uid ?? "";
|
|
@@ -346,12 +349,11 @@ class BtHelper {
|
|
|
async _connectSuccess() {
|
|
|
this.checkDevice()
|
|
|
this.getDeviceInfo()
|
|
|
-
|
|
|
}
|
|
|
|
|
|
async connect(data, onChanged) {
|
|
|
// await this._helper.connect({ data, onChanged, isClick });
|
|
|
-
|
|
|
+ var that = this;
|
|
|
clearTimeout(this.timer);
|
|
|
this.timer = null;
|
|
|
this.bleManager.stopScan()
|
|
@@ -454,7 +456,6 @@ class BtHelper {
|
|
|
var that = this;
|
|
|
///是否已打开蓝牙
|
|
|
var adpter = await that.bleManager.initBluetoothAdapter((res) => {
|
|
|
-
|
|
|
if (!res) {
|
|
|
wx.showToast({
|
|
|
title: '请开启蓝牙功能',
|
|
@@ -483,11 +484,6 @@ class BtHelper {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- closeBle() {
|
|
|
- var that = this;
|
|
|
- that.bleManager.closeBle()
|
|
|
- }
|
|
|
-
|
|
|
async getConnectedDevices() {
|
|
|
var that = this;
|
|
|
try {
|
|
@@ -775,8 +771,16 @@ class BtHelper {
|
|
|
var that = this;
|
|
|
that.send(BtCmd.otaData(value));
|
|
|
}
|
|
|
+
|
|
|
+ async closeBle() {
|
|
|
+ var that = this;
|
|
|
+ that.bleManager.closeBle();
|
|
|
+ await that.bleManager.stopScan();
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
+
|
|
|
// 导出 BtHelper 类
|
|
|
// const btHelper = new BtHelper();
|
|
|
|