From b9cc7390e8e8ce64c41c26fb369c98ce669d660c Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 15:02:30 +0800
Subject: [PATCH] Merge branch '1.2.0'

---
 app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java |  115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 113 insertions(+), 2 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 d4bee60..7429be0 100644
--- a/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java
+++ b/app/src/main/java/com/hdl/photovoltaic/utils/AppManagerUtils.java
@@ -1,11 +1,17 @@
 package com.hdl.photovoltaic.utils;
 
 import android.app.Activity;
+import android.app.ActivityManager;
 import android.content.Context;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 
+import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.widget.LoadingDialog;
+
 import java.util.Iterator;
+import java.util.List;
 import java.util.Stack;
 
 /**
@@ -17,6 +23,8 @@
 public class AppManagerUtils {
 
     private static AppManagerUtils appManagerUtils;
+
+    private LoadingDialog loadingDialog;
 
     private AppManagerUtils() {
     }
@@ -35,8 +43,8 @@
     /**
      * 鑾峰彇AppVersion
      *
-     * @param context
-     * @return
+     * @param context -
+     * @return -
      */
     public static String getAppVersion(Context context) {
         String version = "";
@@ -93,6 +101,20 @@
     }
 
     /**
+     * 鏄惁瀛樺湪绫诲悕鐨凙ctivity
+     */
+    public boolean existsActivity(Class<?>... args) {
+        for (Activity activity : activityStack) {
+            for (Class<?> cls : args) {
+                if (activity.getClass().equals(cls)) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    /**
      * 鎸囧畾涓�涓被鍚�,浠庢寚瀹氱被鍚嶅紑濮嬬Щ闄ゅ悗闈㈡墍鏈堿ctivity
      *
      * @param className   Activity-绫诲悕(activity.getClass().getName())
@@ -131,10 +153,31 @@
 //        }
     }
 
+
+    public  boolean existsActivity(Context activity,String className){
+        boolean isLoginActivity = false;
+        // 鑾峰彇褰撳墠Activity鐨勫垪琛�
+        ActivityManager activityManager = (ActivityManager) activity.getSystemService(Context.ACTIVITY_SERVICE);
+        List<ActivityManager.RunningTaskInfo> taskInfo = activityManager.getRunningTasks(1);
+        // 閬嶅巻Activity鍒楄〃锛屽垽鏂洰鏍嘇ctivity鏄惁鍦ㄥ垪琛ㄤ腑
+        for (ActivityManager.RunningTaskInfo info : taskInfo) {
+            if (info.topActivity.getClassName().equals("com.hdl.photovoltaic.ui.LoginActivity")) {
+                // 鐩爣Activity瀛樺湪
+                // 鍦ㄨ繖閲屽彲浠ヨ繘琛岀浉搴斿鐞�
+                isLoginActivity = true;
+                break;
+            }
+        }
+        return  isLoginActivity;
+    }
+
     /**
      * 缁撴潫鎵�鏈堿ctivity
      */
     public void finishAllActivity() {
+        if (activityStack == null) {
+            return;
+        }
         for (int i = 0, size = activityStack.size(); i < size; i++) {
             if (null != activityStack.get(i)) {
                 Activity activity = activityStack.get(i);
@@ -146,6 +189,74 @@
         activityStack.clear();
     }
 
+
+    /**
+     * 鑾峰彇ActivitySize
+     */
+    public int getActivitySize() {
+        return activityStack.size();
+    }
+
+    /**
+     * 鑾峰彇褰撳墠鐨凙ctivity
+     *
+     * @return -
+     */
+    public Activity getLastActivity() {
+        if (activityStack.size() > 0) {
+            return activityStack.get(activityStack.size() - 1);
+        }
+        return null;
+    }
+
+
+
+
+    /**
+     * 鑾峰彇LoadingDialog
+     *
+     * @return LoadingDialog
+     */
+    public LoadingDialog getLoadingDialog() {
+        Activity activity = getLastActivity();
+        if (loadingDialog == null && activity != null) {
+            loadingDialog = new LoadingDialog(activity, R.style.Custom_Dialog);
+        }
+        return loadingDialog;
+    }
+
+    /**
+     * 寮�濮婰oading
+     */
+    public void showLoading() {
+        getLoadingDialog().start();
+    }
+
+    /**
+     * 寮�濮婰oading
+     *
+     * @param mes 鑷畾涔夋枃鏈�
+     */
+    public void showLoading(String mes) {
+        getLoadingDialog().start();
+        getLoadingDialog().setText(mes);
+    }
+
+    /**
+     * 鍋滄闅愯棌Loading
+     */
+    public void hideLoading() {
+        HdlThreadLogic.runMainThread(new Runnable() {
+            @Override
+            public void run() {
+                if (loadingDialog != null && loadingDialog.isShowing()) {
+                    loadingDialog.stop();
+                }
+            }
+        }, null, null);
+    }
+
+
 //    /**
 //     * 鍒ゆ柇褰撳墠搴旂敤鏄惁鏄痙ebug鐘舵��
 //     */

--
Gitblit v1.8.0