From 22881a4d6409c7d17867e1d40bf81a13578208df Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 31 十月 2025 15:16:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao

---
 keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java |   67 +++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 16 deletions(-)

diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
index f7b56c6..2eb455d 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
@@ -12,9 +12,14 @@
 import android.os.Looper;
 
 import com.doumee.keyCabinet.ui.guide.GuideActivity;
+import com.doumee.keyCabinet.ui.main.MainActivity;
 import com.doumee.lib_coremodel.util.SpUtil;
+import com.innohi.YNHAPI;
 
+import java.io.BufferedWriter;
 import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileWriter;
 import java.io.IOException;
 import java.io.PrintStream;
 import java.io.PrintWriter;
@@ -82,22 +87,30 @@
 	public void uncaughtException(Thread thread, Throwable ex) {
 		try {
 			//瀵煎嚭寮傚父淇℃伅鍒癝D鍗′腑
+			YNHAPI mAPI = YNHAPI.getInstance();
+			mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
 			dumpExceptionToSDCard(ex);
-			//System.out.println("閲嶅惎搴旂敤");
-			// 鍒涘缓涓�涓柊鐨勫惎鍔ㄦ剰鍥�
-			Intent intent = new Intent(mContext, GuideActivity.class);
-			// 璁剧疆FLAG_ACTIVITY_CLEAR_TASK鏍囧織浣�
-			intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
-			// 浣跨敤PendingIntent鍖呰鍚姩鎰忓浘
-			PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, PendingIntent.FLAG_ONE_SHOT);
-			// 鑾峰彇AlarmManager瀹炰緥
-			AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
-			// 鍦�500姣鍚庤Е鍙戦噸鍚搷浣�
-			alarmManager.set(AlarmManager.RTC, System.currentTimeMillis() + 10, pendingIntent);
+			long time = SpUtil.getLong("err_app");
+			SpUtil.saveLong("err_app",System.currentTimeMillis());
+			if(System.currentTimeMillis()-time>60000){
+				//鎶ラ敊闂撮殧60绉掞紝鎵嶉噸鍚�
+				//System.out.println("閲嶅惎搴旂敤");
+				// 鍒涘缓涓�涓柊鐨勫惎鍔ㄦ剰鍥�
+				Intent intent = new Intent(mContext, MainActivity.class);
+				// 璁剧疆FLAG_ACTIVITY_CLEAR_TASK鏍囧織浣�
+				intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
+				// 浣跨敤PendingIntent鍖呰鍚姩鎰忓浘
+				PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, PendingIntent.FLAG_ONE_SHOT);
+				// 鑾峰彇AlarmManager瀹炰緥
+				AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
+				// 鍦�500姣鍚庤Е鍙戦噸鍚搷浣�
+				alarmManager.set(AlarmManager.RTC, System.currentTimeMillis() + 10, pendingIntent);
 
-			android.os.Process.killProcess(android.os.Process.myPid());
-			System.exit(1);
+				android.os.Process.killProcess(android.os.Process.myPid());
+				System.exit(1);
+			}
 			//杩欓噷鍙互閫氳繃缃戠粶涓婁紶寮傚父淇℃伅鍒版湇鍔″櫒锛屼究浜庡紑鍙戜汉鍛樺垎鏋愭棩蹇椾粠鑰岃В鍐砨ug
+
 		} catch (IOException e) {
 			e.printStackTrace();
 			System.out.println("閿欒鏃ュ織1"+e.getMessage());
@@ -259,7 +272,7 @@
 			dumpPhoneInfo(print);
 			print.println();
 			ex.printStackTrace(print);
-			SpUtil.saveString(FILE_NAME+time,new String(out.toByteArray()));
+			//SpUtil.saveString(FILE_NAME+time,new String(out.toByteArray()));
 			print.close();
 		} catch (Exception e) {
 			e.printStackTrace();
@@ -267,7 +280,7 @@
 			//LogUtils.e(TAG, "dump crash info failed");
 		}
 		//浠ュ綋鍓嶆椂闂村垱寤簂og鏂囦欢
-		/*File file = new File(PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
+		File file = new File(PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
 		try {
 			PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(file)));
 			//瀵煎嚭鍙戠敓寮傚父鐨勬椂闂�
@@ -282,7 +295,7 @@
 			e.printStackTrace();
 			System.out.println("閿欒鏃ュ織2"+e.getMessage());
 			//LogUtils.e(TAG, "dump crash info failed");
-		}*/
+		}
 	}
 	private void dumpPhoneInfo(PrintStream pw) throws NameNotFoundException {
 		//搴旂敤鐨勭増鏈悕绉板拰鐗堟湰鍙�
@@ -305,4 +318,26 @@
 		//cpu鏋舵瀯
 		pw.print("CPU ABI: ");
 		pw.println(Build.CPU_ABI);   }
+
+	private void dumpPhoneInfo(PrintWriter pw) throws NameNotFoundException {
+		//搴旂敤鐨勭増鏈悕绉板拰鐗堟湰鍙�
+		PackageManager pm = mContext.getPackageManager();
+		PackageInfo pi = pm.getPackageInfo(mContext.getPackageName(), PackageManager.GET_ACTIVITIES);
+		pw.print("App Version: ");
+		pw.print(pi.versionName);
+		pw.print('_');
+		pw.println(pi.versionCode);
+		//android鐗堟湰鍙�
+		pw.print("OS Version: ");
+		pw.print(Build.VERSION.RELEASE);
+		pw.print("_");
+		pw.println(Build.VERSION.SDK_INT);
+		//鎵嬫満鍒堕�犲晢
+		pw.print("Vendor: ");
+		pw.println(Build.MANUFACTURER);
+		//鎵嬫満鍨嬪彿     pw.print("Model: ");
+		pw.println(Build.MODEL);
+		//cpu鏋舵瀯
+		pw.print("CPU ABI: ");
+		pw.println(Build.CPU_ABI);   }
 }

--
Gitblit v1.9.3