mirror of
http://gitea.winboll.cc/Studio/WinBoLL.git
synced 2026-06-30 04:22:25 +08:00
This commit is contained in:
48
appbase/src/main/java/cc/winboll/studio/appbase/App.java
Normal file
48
appbase/src/main/java/cc/winboll/studio/appbase/App.java
Normal file
@@ -0,0 +1,48 @@
|
||||
package cc.winboll.studio.appbase;
|
||||
|
||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||
import cc.winboll.studio.libappbase.ToastUtils;
|
||||
import cc.winboll.studio.libappbase.BuildConfig;
|
||||
|
||||
/**
|
||||
* @Author ZhanGSKen<zhangsken@qq.com>
|
||||
* @Date 2025/01/05 09:54:42
|
||||
* @Describe 应用全局入口类(继承基础库 GlobalApplication)
|
||||
* 负责应用初始化、全局资源管理与生命周期回调处理,是整个应用的核心入口
|
||||
*/
|
||||
public class App extends GlobalApplication {
|
||||
|
||||
/** 当前应用类的日志 TAG(用于调试输出,标识日志来源) */
|
||||
public static final String TAG = "App";
|
||||
|
||||
/**
|
||||
* 应用创建时回调(全局初始化入口)
|
||||
* 在应用进程启动时执行,仅调用一次,用于初始化全局工具类、第三方库等
|
||||
*/
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
// 如果应用不在调试状态,就根据编译类型设置调试状态
|
||||
if (isDebugging() != true) {
|
||||
setIsDebugging(BuildConfig.DEBUG);
|
||||
}
|
||||
// release 版调试码
|
||||
//setIsDebugging(!BuildConfig.DEBUG);
|
||||
|
||||
// 初始化 Toast 工具类(传入应用全局上下文,确保 Toast 可在任意地方调用)
|
||||
ToastUtils.init(getApplicationContext());
|
||||
}
|
||||
|
||||
/**
|
||||
* 应用终止时回调(资源释放入口)
|
||||
* 仅在模拟环境(如 Android Studio 模拟器)中可靠触发,真机上可能因系统回收进程不执行
|
||||
* 用于释放全局资源,避免内存泄漏
|
||||
*/
|
||||
@Override
|
||||
public void onTerminate() {
|
||||
super.onTerminate(); // 调用父类终止逻辑(如基础库资源释放)
|
||||
// 释放 Toast 工具类资源(销毁全局 Toast 实例,避免内存泄漏)
|
||||
ToastUtils.release();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user