本文主要是介绍Android异常与性能优化之冷启动优化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、冷启动的定义
1、冷启动的定义
冷启动就是在启动应用前,系统中没有该应用的任何进程信息。比如第一次启动
2、冷启动与热启动的区别
热启动就是用户按home键退出应用然后马上又重新启动应用
区别:
<1> 冷启动在启动时没有该应用的进程信息,这时候启动系统就会为该应用创建新的进程,而热启动的进程是保留在后台的<2> 冷启动会创建新的进程所以先会创建Application类,再会去创建ManActivity类,会进行一些测量、绘制等工作最后显示在界面上。 而热启动由于已有进程就不会走Application类,只需走ManActivity就可以了
3、冷启动的时间计算
这个时间值从应用启动(创建进程)开始计算,到完成视图的第一次绘制(即Activity内容对用户可见)为止
二、冷启动的流程
应用第一次启动时系统会从Zygote进程中fork创建出一个新的进程,然后创建和初始化Application类,创建Activity类 inflate布局、当onCreate/onStart/onReume方法走完,contentView的measure/layout/draw显示在界面上
总结:
Application的构造方法->attachBaseContext()->onCreate()->Activity的构造方法->onCreate()->配置主题背景属性->onStart()->onResume()->测量布局绘制显示在界面上
三、冷启动的优化
1、减少onCreate()方法的工作量2、不要让Application参与业务的操作3、不要在Application进行耗时操作4、不要以静态变量的方式在Application中保存数据5、布局 / mainThead
这篇关于Android异常与性能优化之冷启动优化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!