From 734babb3a7348050fdffe845c560ba8b0b218152 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期一, 20 十一月 2023 18:24:43 +0800
Subject: [PATCH] 2023年11月20日18:24:36

---
 app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java |   77 ++++++++++++++++++++++++++++++++++++--
 1 files changed, 73 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java b/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java
index b263fd8..b85206e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java
+++ b/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java
@@ -4,7 +4,18 @@
 import android.content.Context;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
+import android.net.wifi.WifiInfo;
+import android.net.wifi.WifiManager;
 
+import com.hdl.photovoltaic.HDLApp;
+
+import java.net.Inet4Address;
+import java.net.InetAddress;
+import java.net.NetworkInterface;
+import java.net.SocketException;
+import java.util.Enumeration;
 import java.util.Iterator;
 import java.util.Stack;
 
@@ -35,8 +46,8 @@
     /**
      * 鑾峰彇AppVersion
      *
-     * @param context
-     * @return
+     * @param context -
+     * @return -
      */
     public static String getAppVersion(Context context) {
         String version = "";
@@ -94,10 +105,11 @@
 
     /**
      * 鎸囧畾涓�涓被鍚�,浠庢寚瀹氱被鍚嶅紑濮嬬Щ闄ゅ悗闈㈡墍鏈堿ctivity
-     * @param className Activity-绫诲悕(activity.getClass().getName())
+     *
+     * @param className   Activity-绫诲悕(activity.getClass().getName())
      * @param removeClass 鏄惁绉婚櫎鏈韩(true-绉婚櫎)
      */
-    public void finishActivity(String className,boolean removeClass) {
+    public void finishActivity(String className, boolean removeClass) {
         Iterator<Activity> iterator = activityStack.listIterator();
         while (iterator.hasNext()) {
             Activity activity = iterator.next();
@@ -145,6 +157,14 @@
         activityStack.clear();
     }
 
+
+    /**
+     * 鑾峰彇ActivitySize
+     */
+    public int getActivitySize() {
+        return activityStack.size();
+    }
+
 //    /**
 //     * 鍒ゆ柇褰撳墠搴旂敤鏄惁鏄痙ebug鐘舵��
 //     */
@@ -157,6 +177,55 @@
 //        }
 //    }
 
+    /**
+     * 鑾峰緱IP鍦板潃锛屽垎涓轰袱绉嶆儏鍐�:
+     * 涓�锛氭槸wifi涓嬶紱
+     * 浜岋細鏄Щ鍔ㄧ綉缁滀笅锛�
+     */
+    public String getIPAddress(Context context) {
+        NetworkInfo info = ((ConnectivityManager) context
+                .getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();
+        if (info != null && info.isConnected()) {
+            if (info.getType() == ConnectivityManager.TYPE_MOBILE) {//褰撳墠浣跨敤2G/3G/4G缃戠粶
+                try {
+                    //Enumeration<NetworkInterface> en=NetworkInterface.getNetworkInterfaces();
+                    for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) {
+                        NetworkInterface intf = en.nextElement();
+                        for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
+                            InetAddress inetAddress = enumIpAddr.nextElement();
+                            if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet4Address) {
+                                return inetAddress.getHostAddress();
+                            }
+                        }
+                    }
+                } catch (SocketException e) {
+                    e.printStackTrace();
+                }
+            } else if (info.getType() == ConnectivityManager.TYPE_WIFI) {//褰撳墠浣跨敤鏃犵嚎缃戠粶
+                WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
+                WifiInfo wifiInfo = wifiManager.getConnectionInfo();
+                //璋冪敤鏂规硶灏唅nt杞崲涓哄湴鍧�瀛楃涓�
+                String ipAddress = intIP2StringIP(wifiInfo.getIpAddress());//寰楀埌IPV4鍦板潃
+                return ipAddress;
+            }
+        } else {
+            //褰撳墠鏃犵綉缁滆繛鎺�,璇峰湪璁剧疆涓墦寮�缃戠粶
+        }
+        return null;
+    }
+
+    /**
+     * 灏嗗緱鍒扮殑int绫诲瀷鐨処P杞崲涓篠tring绫诲瀷
+     *
+     * @param ip int绫诲瀷
+     * @return -
+     */
+    public static String intIP2StringIP(int ip) {
+        return (ip & 0xFF) + "." +
+                ((ip >> 8) & 0xFF) + "." +
+                ((ip >> 16) & 0xFF) + "." +
+                (ip >> 24 & 0xFF);
+    }
 
 
 }

--
Gitblit v1.8.0