Activity的启动流程分析
Activity是Android应用程序的四大组件之中的一个,负责管理Android应用程序的用户界面,一般一个应用程序中包括非常多个Activity,他们可能执行在一个进程中。也可能执行在不同的进程中。 我们主要通过启动在不同进程中的Activity,来分析Activity的启动流程及AMS对Activity的管理逻辑。 有两个应用程序App1和App2。在App1的Activity A中点击button 启动 App2中的Activity B。 通过分析以上ActivityB的启动过程来了解AMS对Activity的管理逻辑。 步骤1:Activity A告诉AMS服务准备启动Activity B 步骤2:AMS服务处理并通知Activity A所在的进程pause Activity A,Activity A所在的进程处理完毕之后。通知AMS服务Activity A已经完毕pause工作。 步骤3:Activity B所在的进程没有启动,AMS服务首先启动一个新的进程。新的进程启动完毕之后。通知AMS服务进程启动完毕。 步骤4:AMS服务通知新的进程来启动Activity B。新的进程启动Activity B完毕之后。通知AMS服务Activity B启动完毕。 在分析Activity启动流程之前我们先简介下应用进程和AMS服务通信方法。AMS服务和应用进程间属于不同的进程