对于 在 Application初始化一些变量,为何不能够放在activity 或者其余的组件里呢?android
这里就根据我的的理解来说述一下,欢迎补充指正。app
首先 activity 是以栈的形式出现,一个app应用会有多个 activity ,每个activity 都有本身的生命周期,而且当 系统内存不够的时候会自动回收空闲的activity 。同时也会影响到被回收组件的内部变量值。xml
而Application,一个 app应用只会存在一个Application,它的生命周期是只要 app不被进程kill掉,则一直存在。因此初始化 一些系统级变量或者方法的时候要在 Application 的onCreate 方法中完成。继承
PS:系统级Application 要继承 android.app.Application ,而且 AndroidManifest.xml 的 application 节点下要 建立 android:name=".app.Application"生命周期