android启动一个应用程序大概流程

时间:2022-03-24 16:46:36

启动一个应用无非都是通过这个startActivity()函数来完成,通常我们启动一个app都是在桌面点击Launcher图标,大概流程主要是以下几个步骤:


1.Launcher通过Binder进程间通信机制通知ActivityManagerService,它要启动一个Activity。


2.ActivityManagerService通过Binder进程间通信机制通知Launcher进入Paused状态。


3.Launcher通过Binder进程间通信机制通知ActivityManagerService,它已经准备就绪进入Paused状态,于是ActivityManagerService就创建一个新的进程,用来启动一个ActivityThread实例,要启动的Activity在ActivityThread实例中。


4.ActivityThread通过Binder进程间通信机制将一个ApplicationThread类型的Binder对象传递给ActivityManagerService,以便以后ActivityManagerService能够通过这个Binder对象和它进行通信。


5.ActivityManagerService通过Binder进程间通信机制通知ActivityThread,现在一切准备就绪,它可以真正执行Activity的启动操作。