framework层

7 阅读1分钟

AMS、PMS、WMS 三者如何互相调用?

启动一个 APP = AMS 问 PMS 要信息 → AMS 启动进程 → AMS 让 WMS 显示窗口。

启动一个 APP的完整流程

am start com.vela.xxxdemo.myapp

AMS 先问 PMS • AMS:“PMS,帮我查一下 com.vela.xmsdemo.myapp 这个包的信息。” • PMS:“给你,它的入口是 MainActivity,路径是 xxx,可执行文件是 xxx。” 调用关系:AMS → 调用 → PMS(查询应用信息) 

AMS 启动进程 • AMS 拿到信息后,创建进程,启动 APP 的 MainActivity。 

AMS 再命令 WMS • AMS:“WMS,给我创建一个窗口,把 MainActivity 显示出来。”

• WMS:“好,我分配图层、显示位置、动画,把界面画出来。”

调用关系:AMS → 调用 → WMS(创建窗口、显示界面)