AMS 的初始化流程与核心数据结构
- ProcessRecord:记录应用进程信息,包括 PID、UID、进程名、状态(如前台 / 后台)、关联的 Activity 与 Service 列表,是 AMS 进行进程管理与资源调度的基础。
- ActivityRecord:描述单个 Activity 实例,包含组件信息(
ComponentName
)、生命周期状态(如 RESUMED、PAUSED)、所在任务栈(TaskRecord
)、窗口信息(WindowState
)等,用于跟踪 Activity 状态变化。 - TaskRecord:代表一个任务栈,存储一系列相关 ActivityRecord(如浏览器打开的多个页面),维护 Activity 跳转顺序,支持 “返回” 操作与任务切换(如近期任务列表)。
- ActivityStack:管理多个 TaskRecord,按显示优先级组织(如全屏应用栈、对话框栈),决定任务的显示与隐藏逻辑。