From e6a8bdd23d6f5cb46ac650285829573280edcdf6 Mon Sep 17 00:00:00 2001 From: 554325746@qq.com <554325746@qq.com> Date: 星期一, 15 七月 2019 16:51:11 +0800 Subject: [PATCH] a --- app/src/main/java/com/basic/security/utils/CrashHandler.java | 50 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 39 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/com/basic/security/utils/CrashHandler.java b/app/src/main/java/com/basic/security/utils/CrashHandler.java index 0a1829e..6d43e8f 100644 --- a/app/src/main/java/com/basic/security/utils/CrashHandler.java +++ b/app/src/main/java/com/basic/security/utils/CrashHandler.java @@ -15,9 +15,14 @@ import com.basic.security.activity.MainActivity_; import com.basic.security.base.BaseApplication; +import com.facebook.common.file.FileUtils; + +import org.springframework.util.FileCopyUtils; +import org.xutils.common.util.FileUtil; import java.io.File; import java.io.FileOutputStream; +import java.io.FileReader; import java.io.PrintWriter; import java.io.StringWriter; import java.io.Writer; @@ -48,7 +53,7 @@ private Map<String, String> infos = new HashMap<String, String>(); // 鐢ㄤ簬鏍煎紡鍖栨棩鏈�,浣滀负鏃ュ織鏂囦欢鍚嶇殑涓�閮ㄥ垎 - private DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + private static DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); /** * 淇濊瘉鍙湁涓�涓狢rashHandler瀹炰緥 @@ -99,17 +104,20 @@ e.printStackTrace(); } try { - new Thread() { + if (Constants.autoRestart) { + new Thread() { - @Override - public void run() { - Intent intent = new Intent(mContext, MainActivity_.class); - PendingIntent restartIntent = PendingIntent.getActivity(mContext, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK); - AlarmManager mgr = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE); - mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent); - android.os.Process.killProcess(android.os.Process.myPid()); - } - }.start(); + @Override + public void run() { + Intent intent = new Intent(mContext, MainActivity_.class); + PendingIntent restartIntent = PendingIntent.getActivity(mContext, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK); + AlarmManager mgr = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE); + mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent); + android.os.Process.killProcess(android.os.Process.myPid()); + } + }.start(); + } + } catch (Exception e) { e.printStackTrace(); } @@ -208,6 +216,26 @@ return fileName; } + + public static String getErrorContent() { + String time = formatter.format(new Date()); + String fileName = "crash-" + time + ".log"; + String content = ""; + try { + String path = getGlobalpath(); + File dir = new File(path); + if (!dir.exists()) + dir.mkdirs(); + File file = new File(path+fileName); + if (file.exists()) { + content = FileCopyUtils.copyToString(new FileReader(file)); + } + } catch (Exception e) { + e.printStackTrace(); + } + return content; + } + public static String getGlobalpath() { return BaseApplication.getApplication().getFilesDir().getAbsolutePath(); // return Environment.getExternalStorageDirectory().getAbsolutePath() -- Gitblit v1.8.0