冷启动是什么:系统没有该应用进程,重新创建进程
热启动:已有进程,从后台切换到前台
冷启动和热启动的区别:
冷:重新创建application
热:直接走mainactviity,不会重新创建application
冷启动时间计算:视图创建进程到第一次绘制完成为止,activity对用户可见为止
冷启动流程:
zygote进程fork新进程
创建和初始化application类,创建mainactivity类
inflate布局
当oncreate/onstart/onresume走完
contentView的的measure/layout/draw显示在界面上
时间优化:
1.减少oncreate方法的工作量
2.不要让Application参与业务的操作
3.不要在Application进行耗时操作
4.不要以静态变量的方式在Application中保存数据
5.布局/MainThread,层级深度 viewstub使用
网友评论