在研究Android的窗口机制之前,我们需要对其主要的类图关系以及层级之间的依赖与调用关系做一个简单的介绍。
1. window在当前的android系统的中的呈现形式是PhoneWindow类(frameworks/base/policy/src/com/android/internal/policy/impl/PhoneWindow.java);
2. WindowManager的实现实体是WindowManagerImpl.java(frameworks/base/core/java/android/view/WindowManagerImpl.java);
下图主要描述了window系统的层级关系,由图可见WindowManager是运行在Application process中的,WindowManagerService是在system_server中运行,两者的通信是通过中间的会话层IWindowSession来进行的。