type
status
date
slug
summary
tags
category
icon
password
在SystemServer启动“Other”类型服务的时候,最后阶段会执行ActivityManagerService的systemReady()方法,这里就是启动桌面程序的入口.
ActivityManagerService中的systemReady()方法中有这么一段:
ActivityTaskManagerService中有实现:
最终会执行到RootActivityContainer中:
这里会找到桌面程序的Intent:
剩下的就是启动桌面程序了.
Launcher的启动流程代码写的不是一般的混乱,启动Launcher的时候会有好几次的防护,针对Launcher启动崩溃也做了相应的处理.
没有经过debug,可能存在其他的路径启动Launcher,后续如果还有兴趣的话再补充.
Android系统启动流程-ART虚拟机的启动Android通知的简单用法
Loading...