前言

上一篇我们简单分析了ActivityManagerService和ActivityTaskManagerService的启动流程,从它们的名字我们可以明白,这两个服务基本就是管理Activity和Activity任务的,本篇文章我们将会来分析一下Activity的启动流程,看看在这个过程中AMS和ATMS所起到的作用,以便更深入的理解这两个服务。

根据Activity启动时自己所属的进程是否存在,可以将Activity的启动分为两种,根Activity的启动(应用进程未创建)和普通Activity(应用进程已经创建)的启动,两者的启动过程有很多重叠的部分的,根Activity的启动流程也可以认为是应用程序的启动流程。

一、Activity触发ATMS执行startActivity方法的过程

1、当我们在桌面点击应用快捷图标,打开应用的时候,首先会触发Launcher3桌面页面所对应的Activity的startActivity方法。

public class Activity extends ContextThemeWrapper
        im
06-15 00:20