Android冷启动优化,移动开发基础学习

3、创建应用程序进程 第二阶段: 创建完成了应用程序后,应用程序会负责下一阶段的任务 1、创建应用程序对象(application部分) 2、启动主线程

3、创建应用程序进程

第二阶段:

创建完成了应用程序后,应用程序会负责下一阶段的任务

1、创建应用程序对象(application部分)

2、启动主线程

3、创建main activity(就是我们的第一个启动的页面)

4、加载试图

5、布局屏幕

6、执行初始化绘制

完成上述操作后,系统进程会交换当前显示的背景窗口,将其替换成main activity的页面,这个时候

用户就可以进行操作了,下图是冷启动的直观表示

20190907120151773.png

用户在看到页面完全展示出来的时机为main Activity的onResume的时候,那么我们就应该去考虑在此之前会存在哪些耗时的地方,分两个地方,第一是系统、第二是应用程序这一块

第一、Android系统启动进程的时候耗时,如果我们把应用的进程提前启动好了,那下次启动该应用的时候就可以节省出这一步的时间(其实这一步还是比较耗时的),一般来说就是双进程保活了(但是感觉这个越来越难了),如果是做自己设备的,那就好说了,直接launcher启动对应应用服务。还有就是加白名单了;

第二、初始化的白屏、Application的onCreate(),再到第一个启动的Activity

初始化时的白屏界面

在第一次打开APP的时候会出现一个白屏,这个我们可以去设置APP主题,更