WindowManagerService
WindowManagerSerivce有三个主要功能:
窗口管理系统:负责窗口的启动、添加、删除、大小、层级顺序等,它会为每个窗口分配一块Surface以供绘制。核心成员有DisplayContent、WindowToken、WindowState
窗口动画系统:窗口切换时的动画。核心成员:WindowAnimator、Choreographer
输入系统的中转站:从Android Framework – InputManagerService中我们知道输入事件起于InputManagerService及底层系统,由每个Window的RootViewImpl来接收处理,而在寻找接收的Window的时候自然需要WMS这个窗口管理者来协助并中转了。
PS:通过Android Framework–开机启动流程我们知道WMS是Android启动后期开了一个ServerThread线程来开启的各种服务之一,主要调用WindowManagerService.main()来实例化WMS