From ef46fb88602932a7a635fac19379d9b7f4f30441 Mon Sep 17 00:00:00 2001 From: liyi Date: Tue, 11 Mar 2025 12:02:32 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=A2=9E=E5=8A=A032bit=E7=9A=84=E9=94=81u?= =?UTF-8?q?uid=E5=85=BC=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/blue/blue_manage.dart | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/lib/blue/blue_manage.dart b/lib/blue/blue_manage.dart index 9aa7e77d..359758b9 100755 --- a/lib/blue/blue_manage.dart +++ b/lib/blue/blue_manage.dart @@ -179,12 +179,19 @@ class BlueManage { upload: false); if (isExit) { for (final ScanResult scanResult in results) { - if (((scanResult.advertisementData.serviceUuids.isNotEmpty - ? scanResult.advertisementData.serviceUuids[0] - : '') - .toString() - .contains('758824')) && - (scanResult.rssi >= -100)) { + if (scanResult.advertisementData.serviceUuids.isNotEmpty) { + // AppLog.log( + // '扫描到的设备:${scanResult.advertisementData.serviceUuids[0].toString()}'); + } else { + continue; + } + + final isMatch = _isMatch(scanResult + .advertisementData.serviceUuids + .map((e) => e.uuid) + .toList()); + + if (isMatch && (scanResult.rssi >= -100)) { // 查询id相同的元素 final int knownDeviceIndex = scanDevices.indexWhere( (ScanResult d) => @@ -261,10 +268,11 @@ class BlueManage { } final isMatch = _isMatch( - scanResult.advertisementData.serviceUuids - .map((e) => e.uuid) - .toList(), - deviceType); + scanResult.advertisementData.serviceUuids + .map((e) => e.uuid) + .toList(), + deviceType: deviceType, + ); // 判断名字为空的直接剔除 if (isMatch && (scanResult.rssi >= -100)) { // 查询id相同的元素 @@ -307,7 +315,8 @@ class BlueManage { } /// 判断是否包含指定的uuid - bool _isMatch(List serviceUuids, DeviceType deviceType) { + bool _isMatch(List serviceUuids, + {DeviceType deviceType = DeviceType.blue}) { // 获取设备类型数组 List deviceTypeList = getDeviceType(deviceType);