[关闭]
@weidong 2017-07-13T02:53:51.000000Z 字数 1244 阅读 381

Application 类介绍

Android课程


摘抄http://www.jianshu.com/p/8cf17551da65

介绍

生命周期介绍

  1. public class App extends Application {
  2. @Override
  3. public void onCreate() {
  4. // 程序创建的时候执行
  5. Log.d(TAG, "onCreate");
  6. super.onCreate();
  7. }
  8. @Override
  9. public void onTerminate() {
  10. // 程序终止的时候执行
  11. Log.d(TAG, "onTerminate");
  12. super.onTerminate();
  13. }
  14. @Override
  15. public void onLowMemory() {
  16. // 低内存的时候执行
  17. Log.d(TAG, "onLowMemory");
  18. super.onLowMemory();
  19. }
  20. @Override
  21. public void onTrimMemory(int level) {
  22. // 程序在内存清理的时候执行
  23. Log.d(TAG, "onTrimMemory");
  24. super.onTrimMemory(level);
  25. }
  26. //重写此方法可以监听APP一些配置信息的改变事件(如屏幕旋转等),当配置信息改变的时候会调用这个方法
  27. @Override
  28. public void onConfigurationChanged(Configuration newConfig) {
  29. Log.d(TAG, "onConfigurationChanged");
  30. super.onConfigurationChanged(newConfig);
  31. }
  32. }

使用

AndroidManifest.xml 文件,application 节点里面配置name属性

  1. <application
  2. android:name=".App" />

用法

1.初始化资源

  由于Application类是在APP启动的时候就启动,启动在所有Activity之前,所以可以使用它做资源的初始化操作,如图片资源初始化,WebView的预加载,推送服务的注册等等,注意不要执行耗时操作,会拖慢APP启动速度。

2.数据全局共享

可以设置一些全局的共享常量,如一些TAG,枚举值等。
可以设置一些全局使用的共享变量数据,如一个全局的Handler等等,但是要注意,这里缓存的变量数据的作用周期只在APP的生命周期,如果APP因为内存不足而结束的话,再开启这些数据就会消失,所以这里只能存储一些不重要的数据来使数据全APP共享,想要储存重要数据的话需要SharePreference、数据库或者文件存储等这些本地存储。
可以设置一些静态方法来让其他类调用,来使用Application里面的全局变量。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注