【Android 13源码分析】WMS-添加窗口(addWindow)流程-1-应用进程处理
原文中文,约19800字,阅读约需48分钟。
📝
内容提要
本文介绍了Android中Activity的addWindow流程,包括创立WindowState、relayout和finishDrawing三个过程。文章详细解释了APP进程中addWindow的流程,包括创立Window、设置WindowManager、调用addView等步骤。最后,文章提到了ViewRootImpl的setView方法触发了跨进程通讯,将后续流程交给了WMS处理。
❓
Q&A
Android中addWindow流程的主要步骤是什么?
addWindow流程主要包括创立WindowState、relayout和finishDrawing三个步骤。
在addWindow流程中,relayout的作用是什么?
relayout流程触发Surface的创立,并进行窗口位置的摆放逻辑。
ViewRootImpl的setView方法在addWindow流程中起什么作用?
setView方法触发跨进程通讯,通知WMS执行addWindow逻辑。
APP进程在addWindow流程中执行哪些操作?
APP进程在addWindow流程中执行onCreate和onResume生命周期,创立Window并调用addView。
WindowManagerGlobal在addWindow流程中有什么作用?
WindowManagerGlobal是单例,负责管理窗口的添加和处理,调用addView方法。
addWindow流程中,finishDrawing的作用是什么?
finishDrawing流程将UI数据合成并显示到屏幕上。
🏷️