From 30859ca8f2175475d2c666353bc27f3b2ceede53 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 22 八月 2024 13:43:47 +0800
Subject: [PATCH] 2024年08月22日13:43:45

---
 app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java |   43 ++++++++++++++++++++++++++++---------------
 1 files changed, 28 insertions(+), 15 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 f826573..40cebb0 100644
--- a/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java
+++ b/app/src/main/java/com/hdl/photovoltaic/utils/WifiUtils.java
@@ -2,6 +2,7 @@
 
 
 import android.Manifest;
+import android.app.Application;
 import android.content.Context;
 import android.content.pm.PackageManager;
 import android.net.wifi.ScanResult;
@@ -14,20 +15,33 @@
 import androidx.core.app.ActivityCompat;
 
 
+import com.hdl.photovoltaic.HDLApp;
+
 import java.util.ArrayList;
 import java.util.List;
 
 
 public class WifiUtils {
 
-
+    private static WifiUtils mWifiUtils;
     public WifiManager mWifiManager;
     public WifiManager.WifiLock mWifiLock;
 
     public Context mContext;
 
-    public WifiUtils(Context context) {
-        this.mContext = context;
+    public static WifiUtils getInstance() {
+        if (null == mWifiUtils) {
+            synchronized (WifiUtils.class) {
+                if (null == mWifiUtils) {
+                    mWifiUtils = new WifiUtils();
+                }
+            }
+        }
+        return mWifiUtils;
+    }
+
+    public WifiUtils() {
+        this.mContext = HDLApp.getInstance();
         mWifiManager = (WifiManager) this.mContext.getSystemService(Context.WIFI_SERVICE);
     }
 
@@ -36,18 +50,17 @@
      *
      * @return 杩斿洖ssid鍚嶇О
      */
-    public String getCurrentConnectWifiSsid() {
-        WifiInfo wifiInfo = this.getCurrentConnectWifiInfo();
-        return wifiInfo.getSSID().replace("\"", "");
-    }
-
-    /**
-     * 鑾峰彇褰撳墠杩炴帴鐨剋ifi
-     *
-     * @return wifi淇℃伅
-     */
-    public WifiInfo getCurrentConnectWifiInfo() {
-        return (mWifiManager == null) ? null : mWifiManager.getConnectionInfo();
+    public MyWifiInfo getCurrentConnectWifiInfo() {
+        if (mWifiManager == null) {
+            return new MyWifiInfo();
+        }
+        MyWifiInfo myWifiInfo = new MyWifiInfo();
+        try {
+            WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
+            myWifiInfo.setSSID(wifiInfo.getSSID().replace("\"", ""));
+        } catch (Exception ignored) {
+        }
+        return myWifiInfo;
     }
 
     /**

--
Gitblit v1.8.0