1、冷启动(App进程创建)
系统不存在App进程(APP首次启动或APP被完全杀死)时启动APP
此时,APP的启动将经历两个阶段:
第一阶段:
1、加载并启动app;
2、app启动后,第一时间为app显示一个空白的window;
3、创建app进程
4、第二阶段:
5、系统一旦创建了app进程,app进程就要负责做以下的任务:
创建app对象;
1、启动主进程ActivityThread;
2、创建MainActivity;
3、渲染视图;
4、执行onLayout;
5、执行onDraw
6、完成第一次绘制后,把mainActivity替换已经展示的BackgroundWindow,即空白window。
2、热启动(Activity已创建,从后台到前台)
当我们按了Home键或其它情况app被切换到后台,再次启动app的过程。
热启动时,系统将activity带回前台。如果应用程序的所有activity存在内存中,则应用程序可以避免重复对象初始化、渲染、绘制操作。
如果由于内存不足导致对象被回收,则需要在热启动时重建对象,此时与冷启动时将界面显示到手机屏幕上一样。
3、温启动(App进程存在,但Activity结束)
温启动包含了冷启动的一些操作,由于app进程依然在,温启动只执行冷启