From 8c578607dce59c2ed57718264621f4d61cbf8148 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 06 三月 2025 19:28:50 +0800 Subject: [PATCH] 2025年03月06日19:28:44 --- app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java | 35 ++++++++++++++++++++++++++++++++--- 1 files changed, 32 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java b/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java index 40cebb0..b6e5b56 100644 --- a/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java +++ b/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java @@ -10,6 +10,7 @@ import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.os.SystemClock; +import android.text.TextUtils; import android.util.Log; import androidx.core.app.ActivityCompat; @@ -112,17 +113,45 @@ //鑾峰彇鎵弿缁撴灉 public List<ScanResult> getScanResult() { - List<ScanResult> results = new ArrayList<>(); + List<ScanResult> newResults = new ArrayList<>(); + try { if (mWifiManager != null) { // mWifiManager.startScan(); // SystemClock.sleep(1000); - results = mWifiManager.getScanResults(); + List<ScanResult> results = mWifiManager.getScanResults(); + for (int i = 0; i < results.size(); i++) { + ScanResult scanResult = results.get(i); + if (scanResult == null || TextUtils.isEmpty(scanResult.SSID)) { + continue; + } + if (!checkRepetition(newResults, scanResult)) { + //涓嶅瓨鍦ㄥ氨娣诲姞 + newResults.add(scanResult); + } + } + } } catch (Exception ex) { Log.d("WifiUtils", ex.getMessage()); } - return results; + return newResults; + } + + /** + * 妫�鏌ュ垪琛ㄦ暟鎹槸鍚﹂噸澶� + * + * @param list 婧愬垪琛ㄦ暟鎹� + * @param scanResult 琚鏌ュ璞� + * @return true琛ㄧず瀛樺湪锛宖alse琛ㄧず涓嶅瓨鍦� + */ + public boolean checkRepetition(List<ScanResult> list, ScanResult scanResult) { + for (int i = 0; i < list.size(); i++) { + if (list.get(i).SSID.equals(scanResult.SSID)) { + return true; + } + } + return false; } //鑾峰彇宸茬粡閰嶇疆濂界殑缃戠粶杩炴帴 -- Gitblit v1.8.0