admin管理员组

文章数量:1530085

前言

做完年终总结,顿感时间飞逝,春去秋来,一转眼已是年底。回想过去的一年,未感技术有所精益,徒有年龄不断增长,内心惶恐万分,坐立不安,遂拾起键盘,写下这篇文章。盼望能和各位仁人志士不断交流学习,共同进步。

Android的小伙伴应该对Application都很熟悉了,也知道在自己的项目中如何使用Application,是不是如下所示?

public class MainApplication extends BaseApplication {
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(base);
    }

        @Override
    public void onTerminate() {
        super.onTerminate();
    }
    
}
public abstract class BaseApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        initSystem();
    }

    protected abstract void initSystem();

}

看了以上代码,有些同学就会问了,这个Application到底是干嘛的?在应用层我们也没调用呀,它到底是如何被启动的呢?
抱着这个疑问,本文将站在AMS的角度来分析Application的启动流程,如有错误的地方还请不吝赐教。

启动流程

本文标签: 初始化源码流程application