ActivityRecord 是如何启动Activity的
时间: 2023-06-19 07:09:05 浏览: 112
Activity 启动过程源码+分析过程
ActivityRecord 是 Android 系统中一个用于表示 Activity 的类,它包含了 Activity 的状态和相关信息,并且可以用于启动 Activity。
在 Android 中,Activity 的启动是通过调用 ActivityManagerService 中的 startActivity 方法来实现的。当我们调用 startActivity 方法时,ActivityManagerService 会创建一个新的 ActivityRecord 对象,并将其添加到 Activity 栈中。然后,系统会启动该 Activity 对应的进程,并在该进程中创建一个新的 Activity 实例。
在启动 Activity 的过程中,ActivityManagerService 会根据 Activity 的启动模式和任务栈信息来决定如何创建和启动 Activity。例如,如果该 Activity 已经存在于栈中,那么系统就会将其带到栈顶,并调用其 onNewIntent 方法来处理新的 Intent。如果该 Activity 还没有创建,那么系统就会创建一个新的实例,并将其添加到栈顶。
总之,ActivityRecord 是用于描述和管理 Activity 的一个重要类,它在 Android 系统中扮演着重要的角色。
阅读全文