From 188bca06ba908ecc518103ce70e950655642718f Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Mon, 15 Sep 2025 16:32:08 +0800 Subject: [PATCH] =?UTF-8?q?ble=E5=B7=B2=E7=BB=8F=E9=93=BE=E6=8E=A5?= =?UTF-8?q?=EF=BC=8C=E5=88=99=E4=B8=8D=E5=9B=9E=E8=BF=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/data/services/bluetooth_manager.dart | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/data/services/bluetooth_manager.dart b/lib/data/services/bluetooth_manager.dart index 4c4f58ffd..08fff314c 100644 --- a/lib/data/services/bluetooth_manager.dart +++ b/lib/data/services/bluetooth_manager.dart @@ -3,6 +3,7 @@ import 'package:get/get.dart'; import 'package:classic_bluetooth/classic_bluetooth.dart'; import '../../core/utils/logger.dart'; import '../../routes/app_routes.dart'; +import 'ble_manager.dart'; // 重新导出蓝牙设备类型,让外部可以通过BluetoothManager访问 export 'package:classic_bluetooth/classic_bluetooth.dart' show BluetoothDevice; @@ -19,7 +20,7 @@ class BluetoothManager extends GetxService { // 当前经典蓝牙设备 final Rx currentDeviceRx = Rx(null); BluetoothDevice? get currentDevice => currentDeviceRx.value; - + final BleManager _bleManager = Get.find(); // 订阅 StreamSubscription? _bluetoothSubscription; @@ -75,7 +76,7 @@ class BluetoothManager extends GetxService { currentDeviceRx.value = newDevice; // 检查当前是否在OTA升级界面,如果是则不跳转 - if (!_isInOtaUpgradePage()) { + if (!_isInOtaUpgradePage() && !_bleManager.isConnected) { Get.toNamed(Routes.pairing, arguments: newDevice); } else { Logger.info('当前在OTA升级界面,跳过配对页面跳转');