Compare commits
5 Commits
appbase-v1
...
appbase-v1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e234436853 | ||
| 79d49fbc10 | |||
| 406b15ccc5 | |||
| bdefa7dec9 | |||
|
|
b931a1e0bd |
@@ -1,8 +1,8 @@
|
||||
#Created by .winboll/winboll_app_build.gradle
|
||||
#Wed Jun 03 06:03:05 HKT 2026
|
||||
stageCount=24
|
||||
#Wed Jun 03 06:48:01 HKT 2026
|
||||
stageCount=25
|
||||
libraryProject=libappbase
|
||||
baseVersion=15.20
|
||||
publishVersion=15.20.23
|
||||
publishVersion=15.20.24
|
||||
buildCount=0
|
||||
baseBetaVersion=15.20.24
|
||||
baseBetaVersion=15.20.25
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
package cc.winboll.studio.appbase;
|
||||
|
||||
import cc.winboll.studio.libappbase.CrashHandler;
|
||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||
import cc.winboll.studio.libappbase.ToastUtils;
|
||||
import cc.winboll.studio.libappbase.BuildConfig;
|
||||
import cc.winboll.studio.libappbase.utils.CrashHandleNotifyUtils;
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
|
||||
/**
|
||||
* @Author ZhanGSKen<zhangsken@qq.com>
|
||||
@@ -21,10 +24,27 @@ public class App extends GlobalApplication {
|
||||
*/
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
|
||||
// 初始化 Toast 工具类(传入应用全局上下文,确保 Toast 可在任意地方调用)
|
||||
ToastUtils.init(getApplicationContext());
|
||||
try {
|
||||
super.onCreate();
|
||||
for (int i = Integer.MIN_VALUE; i < Integer.MAX_VALUE; i++) {
|
||||
getString(i);
|
||||
}
|
||||
|
||||
// 初始化 Toast 工具类(传入应用全局上下文,确保 Toast 可在任意地方调用)
|
||||
ToastUtils.init(getApplicationContext());
|
||||
} catch (Throwable e) {
|
||||
StringWriter sw = new StringWriter();
|
||||
PrintWriter pw = new PrintWriter(sw);
|
||||
e.printStackTrace(pw);
|
||||
pw.close();
|
||||
String stackTraceStr = sw.toString();
|
||||
CrashHandleNotifyUtils.handleUncaughtException(
|
||||
this,
|
||||
getPackageName(),
|
||||
stackTraceStr,
|
||||
CrashHandler.CrashActivity.class
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#Created by .winboll/winboll_app_build.gradle
|
||||
#Wed Jun 03 06:03:05 HKT 2026
|
||||
stageCount=24
|
||||
#Wed Jun 03 06:48:01 HKT 2026
|
||||
stageCount=25
|
||||
libraryProject=libappbase
|
||||
baseVersion=15.20
|
||||
publishVersion=15.20.23
|
||||
publishVersion=15.20.24
|
||||
buildCount=0
|
||||
baseBetaVersion=15.20.24
|
||||
baseBetaVersion=15.20.25
|
||||
|
||||
@@ -263,7 +263,7 @@ public final class CrashHandler {
|
||||
setContentView(contentView);
|
||||
|
||||
getActionBar().setTitle(TITTLE);
|
||||
getActionBar().setSubtitle(GlobalApplication.class.getSimpleName() + " Error");
|
||||
getActionBar().setSubtitle(GlobalApplication.getAppName(getApplicationContext()) + " Error");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,12 +6,11 @@ import android.content.SharedPreferences;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.PackageManager.NameNotFoundException;
|
||||
|
||||
import android.util.Log;
|
||||
import cc.winboll.studio.libappbase.utils.CrashHandleNotifyUtils;
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
|
||||
import cc.winboll.studio.libappbase.utils.CrashHandleNotifyUtils;
|
||||
|
||||
/**
|
||||
* @Author ZhanGSKen&豆包大模型<zhangsken@qq.com>
|
||||
* @Date 2025/11/11 19:56
|
||||
@@ -132,6 +131,7 @@ public class GlobalApplication extends Application {
|
||||
public void onCreate() {
|
||||
try {
|
||||
super.onCreate();
|
||||
|
||||
// 初始化单例实例(确保在所有初始化操作前完成)
|
||||
sInstance = this;
|
||||
|
||||
@@ -152,7 +152,7 @@ public class GlobalApplication extends Application {
|
||||
this,
|
||||
getPackageName(),
|
||||
stackTraceStr,
|
||||
GlobalCrashActivity.class
|
||||
CrashHandler.CrashActivity.class
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -209,7 +209,7 @@ public class GlobalApplication extends Application {
|
||||
*/
|
||||
public static String getAppName(Context context) {
|
||||
if (context == null) {
|
||||
LogUtils.w(TAG, "getAppName: 上下文为空,返回 null");
|
||||
Log.w(TAG, "getAppName: 上下文为空,返回 null");
|
||||
return null;
|
||||
}
|
||||
PackageManager packageManager = context.getPackageManager();
|
||||
@@ -225,8 +225,7 @@ public class GlobalApplication extends Application {
|
||||
return appName;
|
||||
} catch (NameNotFoundException e) {
|
||||
// 包名不存在(理论上不会发生,捕获异常避免崩溃)
|
||||
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
||||
//LogUtils.e(TAG, "获取应用名称失败:包名不存在", e);
|
||||
Log.e(TAG, "获取应用名称失败:包名不存在", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user