赞
踩
过程简化分析:
启动架构图:
冷启动
系统不存在App进程(APP首次启动或APP被完全杀死)时启动APP,此时,APP的启动将经历两个阶段:
第一阶段:
第二阶段:
创建app对象
热启动
温启动
温启动包含了冷启动的一些操作,由于app进程依然在,温启动只执行冷启动的第二阶段,这代表着它比热启动有更多的开销。
温启动有很多场景,例如:
在桌面点击应用图标后,在app进程没有创建的情况下,需要时间创建app进程,初始化资源,以及启动首页Activity的(这里讨论的首页是指AndroidManifest里面标志的启动页),这就意味点击图标不能马上看到启动页。为了不让用户有卡顿的感觉,谷歌有了Preview Window,在启动页没有绘制完成时,会先初始化一个Window,我们通常看到的黑屏或白屏,就是这个预览窗口。
查看这个AppTheme,找到name="android:windowBackground"
这个属性,查看属性下的内容,就能知道是黑屏还是白屏,这个属性就是设置预览窗口的背景。
android:windowIsTranslucent
属性借助于Android自带的分析工具:
AMS: ActivityManagerService
AMS是Android中最核心的服务,主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作,其职责与操作系统中的进程管理和调度模块相类似,因此它在Android中非常重要。
ActivityManagerService启动
WMS窗口管理
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。