diff --git a/appbase/build.properties b/appbase/build.properties
index ebe1e0a..db3b6d0 100644
--- a/appbase/build.properties
+++ b/appbase/build.properties
@@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle
-#Sat Feb 08 04:25:51 GMT 2025
+#Sat Feb 08 06:24:40 GMT 2025
stageCount=1
libraryProject=libappbase
baseVersion=1.2
publishVersion=1.2.0
-buildCount=222
+buildCount=265
baseBetaVersion=1.2.1
diff --git a/libappbase/build.properties b/libappbase/build.properties
index ebe1e0a..db3b6d0 100644
--- a/libappbase/build.properties
+++ b/libappbase/build.properties
@@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle
-#Sat Feb 08 04:25:51 GMT 2025
+#Sat Feb 08 06:24:40 GMT 2025
stageCount=1
libraryProject=libappbase
baseVersion=1.2
publishVersion=1.2.0
-buildCount=222
+buildCount=265
baseBetaVersion=1.2.1
diff --git a/libappbase/src/main/java/cc/winboll/studio/libappbase/CrashHandler.java b/libappbase/src/main/java/cc/winboll/studio/libappbase/CrashHandler.java
index d6a8b9e..412b221 100644
--- a/libappbase/src/main/java/cc/winboll/studio/libappbase/CrashHandler.java
+++ b/libappbase/src/main/java/cc/winboll/studio/libappbase/CrashHandler.java
@@ -18,17 +18,18 @@ import android.content.res.Resources;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
-import android.os.Handler;
-import android.os.Looper;
+import android.text.SpannableString;
import android.text.TextUtils;
+import android.text.style.ForegroundColorSpan;
import android.view.Menu;
import android.view.MenuItem;
import android.view.ViewGroup;
import android.widget.HorizontalScrollView;
-import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
+import android.widget.Toolbar;
+import cc.winboll.studio.libappbase.R;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -43,7 +44,7 @@ import java.util.Date;
import java.util.Locale;
public final class CrashHandler {
-
+
public static final String TAG = "CrashHandler";
final static String PREFS = CrashHandler.class.getName() + "PREFS";
@@ -76,7 +77,7 @@ public final class CrashHandler {
private void tryUncaughtException(Thread thread, Throwable throwable) {
// 每到这里就燃烧一次保险丝
AppCrashSafetyWire.getInstance().burnSafetyWire();
-
+
final String time = new SimpleDateFormat("yyyy_MM_dd-HH_mm_ss", Locale.getDefault()).format(new Date());
File crashFile = new File(TextUtils.isEmpty(crashDir) ? new File(app.getExternalFilesDir(null), "crash")
: new File(crashDir), "crash_" + time + ".txt");
@@ -410,6 +411,7 @@ public final class CrashHandler {
Toast.makeText(getApplication(), "The text is copied.", Toast.LENGTH_SHORT).show();
break;
case MENUITEM_RESTART:
+ AppCrashSafetyWire.getInstance().resumeToMaximumImmediately();
restart();
break;
}
@@ -439,32 +441,54 @@ public final class CrashHandler {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mLog = getIntent().getStringExtra(EXTRA_CRASH_INFO);
- setTheme(android.R.style.Theme_DeviceDefault_Light_DarkActionBar);
+ setTheme(android.R.style.Theme_DeviceDefault_Light_NoActionBar_Fullscreen);
setContentView: {
- ScrollView contentView = new ScrollView(this);
- contentView.setFillViewport(true);
-
- LinearLayout llTitle = new LinearLayout(this);
- TextView title = new TextView(this); {
- int padding = dp2px(16);
- title.setPadding(padding, padding, padding, padding);
- title.setText("GlobalCrashActiviy");
- }
- llTitle.addView(title, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
- contentView.addView(llTitle, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
-
- HorizontalScrollView hw = new HorizontalScrollView(this);
- hw.setBackgroundColor(Color.GRAY);
- TextView message = new TextView(this); {
- int padding = dp2px(16);
- message.setPadding(padding, padding, padding, padding);
- message.setText(mLog);
- message.setTextIsSelectable(true);
- }
- hw.addView(message);
-
- contentView.addView(hw, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
- setContentView(contentView);
+// LinearLayout contentView = new LinearLayout(this);
+// contentView.setOrientation(LinearLayout.VERTICAL);
+// contentView.setBackgroundColor(Color.BLUE);
+// LinearLayout llTitle = new LinearLayout(this);
+// TextView title = new TextView(this); {
+// int padding = dp2px(16);
+// title.setPadding(padding, padding, padding, padding);
+// title.setText("GlobalCrashActiviy");
+// title.setTextColor(Color.WHITE);
+// }
+// llTitle.addView(title, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+// contentView.addView(llTitle, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+//
+// ScrollView svContent = new ScrollView(this);
+// svContent.setFillViewport(true);
+//
+// HorizontalScrollView hw = new HorizontalScrollView(this);
+// hw.setBackgroundColor(Color.WHITE);
+// TextView message = new TextView(this); {
+// int padding = dp2px(16);
+// message.setPadding(padding, padding, padding, padding);
+// message.setText(mLog);
+// message.setTextIsSelectable(true);
+// }
+// hw.addView(message);
+// svContent.addView(hw, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
+// contentView.addView(svContent, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
+//
+// setContentView(contentView);
+ setContentView(R.layout.activity_globalcrash);
+ Toolbar toolbar = findViewById(R.id.activityglobalcrashToolbar1);
+ toolbar.setBackgroundColor(getColor(R.color.colorTittleBackgroung));
+ toolbar.setTitleTextColor(getColor(R.color.colorTittleText));
+ toolbar.setSubtitleTextColor(getColor(R.color.colorTittleText));
+ setActionBar(toolbar);
+ TextView tvLog = findViewById(R.id.activityglobalcrashTextView1);
+ tvLog.setText(mLog);
+// // 内部崩溃测试
+// tvLog.setOnClickListener(new View.OnClickListener(){
+// @Override
+// public void onClick(View view) {
+// for (int i = Integer.MIN_VALUE; i < Integer.MAX_VALUE; i++) {
+// getString(i);
+// }
+// }
+// });
}
}
@@ -502,6 +526,7 @@ public final class CrashHandler {
Toast.makeText(getApplication(), "The text is copied.", Toast.LENGTH_SHORT).show();
break;
case MENUITEM_RESTART:
+ AppCrashSafetyWire.getInstance().resumeToMaximumImmediately();
restart();
break;
}
@@ -514,6 +539,14 @@ public final class CrashHandler {
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
menu.add(0, MENUITEM_RESTART, 0, "Restart").setOnMenuItemClickListener(this)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+
+ // 设置菜单文本颜色
+ for (int i = 0; i < menu.size(); i++) {
+ MenuItem item = menu.getItem(i);
+ SpannableString spanString = new SpannableString(item.getTitle().toString());
+ spanString.setSpan(new ForegroundColorSpan(getColor(R.color.colorTittleText)), 0, spanString.length(), 0);
+ item.setTitle(spanString);
+ }
return true;
}
}
diff --git a/libappbase/src/main/java/cc/winboll/studio/libappbase/GlobalApplication.java b/libappbase/src/main/java/cc/winboll/studio/libappbase/GlobalApplication.java
index 7663feb..4bafae4 100644
--- a/libappbase/src/main/java/cc/winboll/studio/libappbase/GlobalApplication.java
+++ b/libappbase/src/main/java/cc/winboll/studio/libappbase/GlobalApplication.java
@@ -67,7 +67,7 @@ public class GlobalApplication extends Application {
//LogUtils.setTAGListEnable(GlobalApplication.TAG, true);
LogUtils.setALlTAGListEnable(true);
LogUtils.d(TAG, "LogUtils init");
-
+
// 设置应用异常处理窗口
CrashHandler.init(this);
diff --git a/libappbase/src/main/java/cc/winboll/studio/libappbase/LogUtils.java b/libappbase/src/main/java/cc/winboll/studio/libappbase/LogUtils.java
index 94b7827..d814b2f 100644
--- a/libappbase/src/main/java/cc/winboll/studio/libappbase/LogUtils.java
+++ b/libappbase/src/main/java/cc/winboll/studio/libappbase/LogUtils.java
@@ -1,4 +1,5 @@
package cc.winboll.studio.libappbase;
+
/**
* @Author ZhanGSKen@QQ.COM
* @Date 2024/08/12 13:44:06
diff --git a/libappbase/src/main/res/layout/activity_globalcrash.xml b/libappbase/src/main/res/layout/activity_globalcrash.xml
new file mode 100644
index 0000000..eaa5b5d
--- /dev/null
+++ b/libappbase/src/main/res/layout/activity_globalcrash.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/libappbase/src/main/res/values/colors.xml b/libappbase/src/main/res/values/colors.xml
new file mode 100644
index 0000000..37a30c6
--- /dev/null
+++ b/libappbase/src/main/res/values/colors.xml
@@ -0,0 +1,14 @@
+
+
+
+ #FF196ABC
+ #FF002B57
+ #FF80BFFF
+ #FF80BFFF
+ #FF196ABC
+ #FF002B57
+ #FF80BFFF
+ #FFA9A9A9
+ #FF000000
+ #FFE7E7E7
+