- Gityuan – startActivity启动过程分析

- 点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求;
-
system_server 进程接收到请求后,向zygote 进程发送创建进程的请求; -
Zygote 进程fork 出新的子进程,即App进程; - App进程,通过
Binder IPC向sytem_server 进程发起attachApplication 请求; -
system_server 进程在收到请求后,进行一系列准备工作后,再通过binder IPC向App进程发送scheduleLaunchActivity 请求; - App进程的
binder 线程(ApplicationThread)在收到请求后,通过handle r向主线程发送LAUNCH_ACTIVITY消息; - 主线程在收到
Message 后,通过发射机制创建目标Activity,并回调Activity.onCreate() 等方法。










