WMS实战:Android系统窗口管理服务核心架构
一、WMS概述
1.1 什么是WindowManagerService
WindowManagerService(WMS)是Android系统中最核心的系统服务之一,负责管理所有应用程序和系统的窗口。它是连接应用进程视图系统和底层SurfaceFlinger合成器的桥梁,在整个Android图形显示架构中扮演着承上启下的关键角色。
核心职责:
- 窗口层级管理: 维护Z-order窗口层叠顺序,管理系统窗口、应用窗口、子窗口的显示优先级
- 布局计算: 根据窗口属性、屏幕方向、Insets计算每个窗口的位置和尺寸
- Surface管理: 协调SurfaceControl创建、配置、销毁,管理图形缓冲区
- 输入事件分发: 根据触摸位置和窗口层级,将输入事件路由到正确的窗口
- 窗口动画: 控制窗口切换、旋转、过渡动画
- 多显示器支持: 管理多屏幕显示,协调不同Display的窗口
在系统中的位置:
Application Process



