0
点赞
收藏
分享

微信扫一扫

多模态交互才是人机交互的未来

Resin_Wu 2024-09-23 阅读 29
android

Application

Application是Android的一大组件,在App运行过程中有且仅有一个Application对象贯穿整个生命周期。

生命周期

    // App启动时调用
    @Override
    public void onCreate() {
        super.onCreate();
    }
    
    // App终止时调用(不一定),在应用开发中没什么意义
    @Override
    public void onTerminate() {
        super.onTerminate();
        Log.d(TAG, "onTerminate");
    }

    // 配置改变时调用,例如:从竖屏变为横屏
    @Override
    public void onConfigurationChanged(@NonNull Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        Log.d(TAG, "onConfigurationChanged");
    }

Application操作全局变量

适合在Application中保存的全局变量主要有下面3类数据:

  • 会频繁读取的信息,如用户名、手机号等。
  • 不方便由意图传递的数据,例如位图对象、非字符串类型的集合对象等。
  • 容易频繁分配内存而导致内存泄漏的对象,如Handler对象等。
public class MyApplication extends Application {
    private static MyApplication mApp;
    public HashMap<String, String> infoMap = new HashMap<>();

    public static MyApplication getInstance() {
        return mApp;
    }

    // App启动时调用
    @Override
    public void onCreate() {
        super.onCreate();
        mApp = this;
        Log.d(TAG, "onCreate");
    }
}
 mApp = MyApplication.getInstance();
 mApp.infoMap.put("name", nameInput.getText().toString());
 String name = mApp.infoMap.get("name");

案例代码

举报

相关推荐

0 条评论