From 67b0fb33bd56952f8f5701f5f2c80ae0e3630ce8 Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Sat, 9 May 2026 11:43:15 +0800 Subject: [PATCH] =?UTF-8?q?fix(pairing):=20=E7=A7=BB=E9=99=A4=E8=93=9D?= =?UTF-8?q?=E7=89=99=E8=AE=BE=E5=A4=87=E5=90=8D=E7=A7=B0=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E4=BB=A5=E9=81=BF=E5=85=8D=E8=AF=AF=E5=88=A4=E5=B7=B2=E7=BB=91?= =?UTF-8?q?=E5=AE=9A=E8=AE=BE=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MAC 地址在本机绑定列表中已经全局唯一,叠加名称包含校验会导致在用户重命名设备或广播未带 LocalName 时,误将已绑定设备识别为新设备。 --- lib/modules/pairing/controllers/pairing_controller.dart | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/modules/pairing/controllers/pairing_controller.dart b/lib/modules/pairing/controllers/pairing_controller.dart index 5156ea8b4..1c89ae606 100644 --- a/lib/modules/pairing/controllers/pairing_controller.dart +++ b/lib/modules/pairing/controllers/pairing_controller.dart @@ -805,7 +805,9 @@ class PairingController extends GetxController with WidgetsBindingObserver { final existingDevice = User.instance.devices.firstWhere( (d) => d.devicetype == 1 && - d.devicename.contains(deviceName) && + // 蓝牙名称校验已移除:MAC 在本机绑定列表中已经全局唯一, + // 叠加 name.contains 反而会在用户重命名设备或广播未带 LocalName 时误判已绑定设备为新设备。 + // d.devicename.contains(deviceName) && d.devicemac == device.address, orElse: () => UserDevice( id: -1, @@ -836,7 +838,9 @@ class PairingController extends GetxController with WidgetsBindingObserver { final existingDevice = User.instance.devices.firstWhere( (d) => d.devicetype != 1 && - d.devicename.contains(deviceName) && + // 蓝牙名称校验已移除:MAC 在本机绑定列表中已经全局唯一, + // 叠加 name.contains 反而会在用户重命名设备或广播未带 LocalName 时误判已绑定设备为新设备。 + // d.devicename.contains(deviceName) && d.devicemac == device.address, orElse: () => UserDevice( id: -1,