1.添加升级OTA
2.我的添加更换网络入口 3.调试SDK中的删除用户接口
This commit is contained in:
@@ -1,9 +1,141 @@
|
||||
const app = getApp();
|
||||
|
||||
Component({
|
||||
data: {
|
||||
otaProgress: 0,
|
||||
otaStatus: '', // 'upgrading' | 'success' | 'failed' | ''
|
||||
otaMessage: ''
|
||||
},
|
||||
|
||||
methods: {
|
||||
bindOk() {
|
||||
this.triggerEvent('deviceEvent', {
|
||||
status: true
|
||||
});
|
||||
},
|
||||
|
||||
// OTA 升级方法
|
||||
updateOta() {
|
||||
wx.showModal({
|
||||
title: '提示',
|
||||
content: '确定要进行 OTA 升级吗?升级过程中请保持设备与手机的连接,升级可能需要几分钟时间。',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
this.startOtaUpgrade();
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 开始 OTA 升级
|
||||
startOtaUpgrade() {
|
||||
wx.showLoading({
|
||||
title: '正在升级...',
|
||||
mask: true
|
||||
});
|
||||
|
||||
this.setData({
|
||||
otaProgress: 0,
|
||||
otaStatus: 'upgrading',
|
||||
otaMessage: '升级初始化中...'
|
||||
});
|
||||
|
||||
const activeProtocol = app.globalData.ppScale.activeProtocol;
|
||||
|
||||
if (!activeProtocol) {
|
||||
wx.hideLoading();
|
||||
wx.showToast({
|
||||
title: '设备未连接,请重新连接',
|
||||
icon: 'none'
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
// 调用蓝牙插件的 OTA 升级接口
|
||||
activeProtocol.codeOtaUpdate((status) => {
|
||||
console.log('OTA 升级状态:', status);
|
||||
|
||||
// status 可能是进度百分比或状态码
|
||||
if (typeof status === 'object') {
|
||||
// 处理进度对象 { progress: 0-100, status: 0/1 }
|
||||
if (status.progress !== undefined) {
|
||||
this.setData({
|
||||
otaProgress: status.progress,
|
||||
otaMessage: `升级进度: ${status.progress}%`
|
||||
});
|
||||
}
|
||||
|
||||
// 升级完成或失败
|
||||
if (status.status === 0) {
|
||||
this.handleOtaSuccess();
|
||||
} else if (status.status === 1) {
|
||||
this.handleOtaFailed();
|
||||
}
|
||||
} else if (typeof status === 'number') {
|
||||
// 处理数字状态码
|
||||
if (status === 0) {
|
||||
this.handleOtaSuccess();
|
||||
} else if (status === 1) {
|
||||
this.handleOtaFailed();
|
||||
} else {
|
||||
// 当作进度百分比处理
|
||||
this.setData({
|
||||
otaProgress: Math.min(status, 100),
|
||||
otaMessage: `升级进度: ${Math.min(status, 100)}%`
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// OTA 升级成功处理
|
||||
handleOtaSuccess() {
|
||||
wx.hideLoading();
|
||||
this.setData({
|
||||
otaProgress: 100,
|
||||
otaStatus: 'success',
|
||||
otaMessage: '升级成功'
|
||||
});
|
||||
|
||||
wx.showToast({
|
||||
title: 'OTA 升级成功',
|
||||
icon: 'success',
|
||||
duration: 2000
|
||||
});
|
||||
|
||||
// 2秒后重置状态
|
||||
setTimeout(() => {
|
||||
this.setData({
|
||||
otaProgress: 0,
|
||||
otaStatus: '',
|
||||
otaMessage: ''
|
||||
});
|
||||
}, 2000);
|
||||
},
|
||||
|
||||
// OTA 升级失败处理
|
||||
handleOtaFailed() {
|
||||
wx.hideLoading();
|
||||
this.setData({
|
||||
otaProgress: 0,
|
||||
otaStatus: 'failed',
|
||||
otaMessage: '升级失败,请重试'
|
||||
});
|
||||
|
||||
wx.showToast({
|
||||
title: '升级失败,请重试',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
|
||||
// 2秒后重置状态
|
||||
setTimeout(() => {
|
||||
this.setData({
|
||||
otaProgress: 0,
|
||||
otaStatus: '',
|
||||
otaMessage: ''
|
||||
});
|
||||
}, 2000);
|
||||
}
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user