From 8ff90d87687b6d38158809aae776b6c709d7b60a Mon Sep 17 00:00:00 2001
From: weimingfei <fei_gaming@sina.com>
Date: 星期四, 04 十二月 2025 12:01:41 +0800
Subject: [PATCH] 指纹钥匙柜

---
 keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java |   92 +++++++++++++++++++++------------------------
 1 files changed, 43 insertions(+), 49 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 2eb455d..dbe30e2 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
@@ -11,10 +11,12 @@
 import android.os.Environment;
 import android.os.Looper;
 
+import com.doumee.keyCabinet.MApplication;
 import com.doumee.keyCabinet.ui.guide.GuideActivity;
 import com.doumee.keyCabinet.ui.main.MainActivity;
+import com.doumee.keyCabinet.utils.update.FileUtil;
 import com.doumee.lib_coremodel.util.SpUtil;
-import com.innohi.YNHAPI;
+import com.mc.enjoysdk.McSystemUi;
 
 import java.io.BufferedWriter;
 import java.io.ByteArrayOutputStream;
@@ -28,6 +30,7 @@
 import java.lang.Thread.UncaughtExceptionHandler;
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.List;
 import java.util.Properties;
 
 /**
@@ -40,7 +43,7 @@
  */
 public class CrashHandler implements UncaughtExceptionHandler {
 	private static final String TAG = "CrashHandler";
-	private static String PATH = Environment.getExternalStorageDirectory().getPath() + "/log/";
+	private static String PATH =  "/log/";
 	public static final String FILE_NAME = "crash";
 	//log鏂囦欢鐨勫悗缂�鍚�
 	private static final String FILE_NAME_SUFFIX = ".txt";
@@ -87,9 +90,8 @@
 	public void uncaughtException(Thread thread, Throwable ex) {
 		try {
 			//瀵煎嚭寮傚父淇℃伅鍒癝D鍗′腑
-			YNHAPI mAPI = YNHAPI.getInstance();
-			mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
-			dumpExceptionToSDCard(ex);
+			McSystemUi mcSystemUi = McSystemUi.getInstance(mContext);
+			MCUtils.show(mcSystemUi);
 			long time = SpUtil.getLong("err_app");
 			SpUtil.saveLong("err_app",System.currentTimeMillis());
 			if(System.currentTimeMillis()-time>60000){
@@ -111,50 +113,40 @@
 			}
 			//杩欓噷鍙互閫氳繃缃戠粶涓婁紶寮傚父淇℃伅鍒版湇鍔″櫒锛屼究浜庡紑鍙戜汉鍛樺垎鏋愭棩蹇椾粠鑰岃В鍐砨ug
 
-		} catch (IOException e) {
-			e.printStackTrace();
-			System.out.println("閿欒鏃ュ織1"+e.getMessage());
-		}
-		//鎵撳嵃鍑哄綋鍓嶈皟鐢ㄦ爤淇℃伅
-		ex.printStackTrace();
-		//濡傛灉绯荤粺鎻愪緵浜嗛粯璁ょ殑寮傚父澶勭悊鍣紝鍒欎氦缁欑郴缁熷幓缁撴潫鎴戜滑鐨勭▼搴忥紝鍚﹀垯灏辩敱鎴戜滑鑷繁缁撴潫鑷繁
-		if (mDefaultHandler != null) {
-			mDefaultHandler.uncaughtException(thread, ex);
-		} else {
-			android.os.Process.killProcess(android.os.Process.myPid());
-		}
-
-		if (!handleException(ex) && mDefaultHandler != null) {
-			// 濡傛灉鐢ㄦ埛娌℃湁澶勭悊鍒欒绯荤粺榛樿鐨勫紓甯稿鐞嗗櫒鏉ュ鐞�
-			mDefaultHandler.uncaughtException(thread, ex);
-		} else {
-			/*try {
-				Thread.sleep(500);
-			} catch (InterruptedException e) {
-				Log.e(TAG, "error : ", e);
-			}*/
-			/*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);
-
-			android.os.Process.killProcess(android.os.Process.myPid());
-			System.exit(1);*/
-			/*// 鏈崟鑾峰紓甯稿啓鏂囦欢
-			writeCrashInfoToFile(ex);
-			// 閫�鍑烘暣涓簲鐢�
+			//鎵撳嵃鍑哄綋鍓嶈皟鐢ㄦ爤淇℃伅
+			ex.printStackTrace();
+			//濡傛灉绯荤粺鎻愪緵浜嗛粯璁ょ殑寮傚父澶勭悊鍣紝鍒欎氦缁欑郴缁熷幓缁撴潫鎴戜滑鐨勭▼搴忥紝鍚﹀垯灏辩敱鎴戜滑鑷繁缁撴潫鑷繁
 			if (mDefaultHandler != null) {
 				mDefaultHandler.uncaughtException(thread, ex);
 			} else {
-				System.exit(0);
-			}*/
+				android.os.Process.killProcess(android.os.Process.myPid());
+			}
+
+			if (!handleException(ex) && mDefaultHandler != null) {
+				// 濡傛灉鐢ㄦ埛娌℃湁澶勭悊鍒欒绯荤粺榛樿鐨勫紓甯稿鐞嗗櫒鏉ュ鐞�
+				mDefaultHandler.uncaughtException(thread, ex);
+			}
+			long current = System.currentTimeMillis();
+			String time2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(current));
+			try {
+				ByteArrayOutputStream out = new ByteArrayOutputStream();
+				PrintStream print = new PrintStream(out);
+				//瀵煎嚭鍙戠敓寮傚父鐨勬椂闂�
+				print.println(time2);
+				//瀵煎嚭鎵嬫満淇℃伅
+				dumpPhoneInfo(print);
+				print.println();
+				ex.printStackTrace(print);
+				SpUtil.saveString(FILE_NAME+time2,new String(out.toByteArray()));
+
+				print.close();
+			} catch (Exception e) {
+				e.printStackTrace();
+				System.out.println("閿欒鏃ュ織2"+e.getMessage());
+				//LogUtils.e(TAG, "dump crash info failed");
+			}
+		}catch (Exception e){
+			e.printStackTrace();
 		}
 	}
 
@@ -200,6 +192,8 @@
 		} catch (NameNotFoundException e) {
 			e.printStackTrace();
 			System.out.println("閿欒鏃ュ織3"+e.getMessage());
+		}catch (Exception e){
+			e.printStackTrace();
 		}
 	}
 
@@ -244,7 +238,6 @@
 						Build.BRAND,
 						// android SDK鐗堟湰
 						Build.VERSION.RELEASE);
-		//sp.setString(Constants.SP_CRASH_EXCEPTION, errorLog);
 		return null;
 	}
 
@@ -272,7 +265,8 @@
 			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();
@@ -280,7 +274,7 @@
 			//LogUtils.e(TAG, "dump crash info failed");
 		}
 		//浠ュ綋鍓嶆椂闂村垱寤簂og鏂囦欢
-		File file = new File(PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
+		File file = new File(FileUtil.getFile(mContext)+PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
 		try {
 			PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(file)));
 			//瀵煎嚭鍙戠敓寮傚父鐨勬椂闂�

--
Gitblit v1.9.3