Android冷启动和热启动

2019-01-02  本文已影响0人  GexYY

一、什么是冷启动、热启动?

二、冷启动、热启动的区别

三、冷启动时间的计算

API19 之后,系统会出打印日志输出启动的时间;
冷启动时间 = 应用启动(创建进程) —> 完成视图的第一次绘制(Activity内容对用户可见);

四、冷启动流程

Zygote进程中fork创建出一个新的进程;
创建和初始化Application类、创建MainActivity;
inflate布局、当onCreate/onStart/onResume方法都走完;
contentView的measure/layout/draw显示在界面上;
总结:
Application构造方法 –> attachBaseContext() –> onCreate() –> Activity构造方法 –> onCreate() –> 配置主题中背景等属性 –> onStart() –> onResume() –> 测量布局绘制显示在界面上。

五、冷启动的优化

减少在Application和第一个Activity的onCreate()方法的工作量;
不要让Application参与业务的操作;
不要在Application进行耗时操作;
不要以静态变量的方式在Application中保存数据;
减少布局的复杂性和深度;


原文:https://blog.csdn.net/lingguiqin/article/details/79382240

上一篇下一篇

猜你喜欢

热点阅读