Android中根Activity的启动过程

2020-04-02  本文已影响0人  MadnessXiong

Activity的启动过程分为2种,一种是根Activity的启动过程,另一种是普通Activity的启动过程。根Activity指的是应用程序启动的第一个Activity。因此根Activity的启动过程一般情况下,也可以理解为应用程序的启动过程。普通Activity指的是除应用程序启动的第一个Activity之外的其他Activity。

1. 根Activity的启动过程

根Activity的启动过程分为3个部分:

  1. Launcher请求AMS过程
  2. AMS到ApplicationThread的调用过程
  3. ActivityThread启动Activity过程

2. 根Activity启动过程中涉及到的进程

Launcher进程首先向AMS请求创建根Activity,AMS会判断根Activity所需要的应用程序进程是否存在并启动,如果不存在就会请求Zygote进程创建应用程序进程(这一步是通过Socket通信)。如果存在或者应用程序进程启动后,AMS会请求创建根Activity。

根Activity启动过程中涉及以下几个进程:Launcher进程,AMS所在的SystemServer进程,Zygote进程,应用程序进程

普通Activity启动过程中设计2个进程:AMS所在的SystemServer进程,应用程序进程。

上一篇下一篇

猜你喜欢

热点阅读