From 15964c34b107ffbba345b6ae4f1b97baee72aef2 Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Fri, 5 Sep 2025 21:47:59 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=96=B0=E6=89=8B=E5=BC=95=E5=AF=BC):?= =?UTF-8?q?=20-=20=E5=B0=86=E6=96=B0=E6=89=8B=E5=BC=95=E5=AF=BC=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E7=8A=B6=E6=80=81=E6=94=B9=E4=B8=BAfalse=20-=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0GetStorage=E7=94=A8=E4=BA=8E=E5=AD=98?= =?UTF-8?q?=E5=82=A8=E5=BC=95=E5=AF=BC=E5=AE=8C=E6=88=90=E7=8A=B6=E6=80=81?= =?UTF-8?q?=20-=20=E7=A7=BB=E9=99=A4=E5=86=97=E4=BD=99=E7=9A=84=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=BE=93=E5=87=BA=20-=20=E4=BB=85=E5=9C=A8=E5=BC=95?= =?UTF-8?q?=E5=AF=BC=E5=AE=8C=E6=88=90=E5=90=8E=E6=A3=80=E6=9F=A5OTA?= =?UTF-8?q?=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/data/services/novice_guide_service.dart | 4 +- .../home/controllers/home_controller.dart | 42 +++++++++++-------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/lib/data/services/novice_guide_service.dart b/lib/data/services/novice_guide_service.dart index 485004914..17d9f0a35 100644 --- a/lib/data/services/novice_guide_service.dart +++ b/lib/data/services/novice_guide_service.dart @@ -14,8 +14,8 @@ class NoviceGuideService extends GetxService { final BleService _bleService = BleService(); StreamSubscription? _statusSubscription; - bool isHomeGuide = true; - bool isAIGuide = true; + bool isHomeGuide = false; + bool isAIGuide = false; RxBool isWakeup = false.obs; diff --git a/lib/modules/home/controllers/home_controller.dart b/lib/modules/home/controllers/home_controller.dart index c0434e6e1..378dfc6ea 100644 --- a/lib/modules/home/controllers/home_controller.dart +++ b/lib/modules/home/controllers/home_controller.dart @@ -1,4 +1,5 @@ import 'package:get/get.dart'; +import 'package:get_storage/get_storage.dart'; // 移除了dart:async导入,因为不再使用Timer import '../../../data/services/novice_guide_service.dart'; import '../../../routes/app_routes.dart'; @@ -20,6 +21,7 @@ enum ConnectionStatus { class HomeController extends GetxController { static const String _tag = 'HomeCtrl'; static HomeController get to => Get.find(); + final GetStorage _storage = GetStorage(); final _isFullyConnected = false.obs; String? _lastConnectedDeviceName; @@ -46,13 +48,13 @@ class HomeController extends GetxController { Logger.d(_tag, 'lxm--接收到的DeviceInfo: $newDeviceInfo'); if (newDeviceInfo != null) { - Logger.d(_tag, 'lxm--原始数据 - 左耳电量: ${newDeviceInfo.leftEarBattery}'); - Logger.d(_tag, 'lxm--原始数据 - 右耳电量: ${newDeviceInfo.rightEarBattery}'); - Logger.d(_tag, 'lxm--原始数据 - 充电仓电量: ${newDeviceInfo.caseBattery}'); - Logger.d(_tag, 'lxm--原始数据 - 左耳充电: ${newDeviceInfo.leftEarCharging}'); - Logger.d(_tag, 'lxm--原始数据 - 右耳充电: ${newDeviceInfo.rightEarCharging}'); - Logger.d(_tag, 'lxm--原始数据 - 充电仓充电: ${newDeviceInfo.caseCharging}'); - Logger.d(_tag, 'lxm--原始数据 - 固件版本: ${newDeviceInfo.firmwareVersion}'); + // Logger.d(_tag, 'lxm--原始数据 - 左耳电量: ${newDeviceInfo.leftEarBattery}'); + // Logger.d(_tag, 'lxm--原始数据 - 右耳电量: ${newDeviceInfo.rightEarBattery}'); + // Logger.d(_tag, 'lxm--原始数据 - 充电仓电量: ${newDeviceInfo.caseBattery}'); + // Logger.d(_tag, 'lxm--原始数据 - 左耳充电: ${newDeviceInfo.leftEarCharging}'); + // Logger.d(_tag, 'lxm--原始数据 - 右耳充电: ${newDeviceInfo.rightEarCharging}'); + // Logger.d(_tag, 'lxm--原始数据 - 充电仓充电: ${newDeviceInfo.caseCharging}'); + // Logger.d(_tag, 'lxm--原始数据 - 固件版本: ${newDeviceInfo.firmwareVersion}'); } else { Logger.d(_tag, 'lxm--接收到的DeviceInfo为null'); } @@ -72,13 +74,13 @@ class HomeController extends GetxController { caseCharging.value = newDeviceInfo?.caseCharging ?? false; firmwareVersion.value = newDeviceInfo?.firmwareVersion ?? ''; - Logger.d(_tag, 'lxm--更新后的值 - 左耳电量: ${leftEarBattery.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 右耳电量: ${rightEarBattery.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 充电仓电量: ${caseBattery.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 左耳充电: ${leftEarCharging.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 右耳充电: ${rightEarCharging.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 充电仓充电: ${caseCharging.value}'); - Logger.d(_tag, 'lxm--更新后的值 - 固件版本: ${firmwareVersion.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 左耳电量: ${leftEarBattery.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 右耳电量: ${rightEarBattery.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 充电仓电量: ${caseBattery.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 左耳充电: ${leftEarCharging.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 右耳充电: ${rightEarCharging.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 充电仓充电: ${caseCharging.value}'); + // Logger.d(_tag, 'lxm--更新后的值 - 固件版本: ${firmwareVersion.value}'); } Worker? _deviceInfoWorker; @@ -140,7 +142,7 @@ class HomeController extends GetxController { Future refreshDeviceConnection() async { await _checkConnectionStatus(); - + // 如果设备已连接,主动刷新设备信息 if (_isFullyConnected.value) { try { @@ -173,6 +175,8 @@ class HomeController extends GetxController { bool wasConnected = _isFullyConnected.value; bool isNowConnected = hasClassicBluetooth && hasBleConnection; + bool isGuideCompleted = _storage.read('home_guide') ?? false; + if (isNowConnected && currentDevice == null) { isNowConnected = false; } @@ -191,9 +195,11 @@ class HomeController extends GetxController { // 移除了连接成功后的电池信息刷新 // 连接成功后检查OTA升级 - Future.delayed(const Duration(seconds: 2), () { - _checkOtaUpgrade(); - }); + if (isGuideCompleted) { + Future.delayed(const Duration(seconds: 2), () { + _checkOtaUpgrade(); + }); + } } // 移除了根据连接状态控制定时器的逻辑 }