锁屏上显示Activity
SurfaceFlinger 前面说的,就是一个surface的合成。SurfaceFlinger就是一个默默的记录着,它不会对surface的内容有什么改动。 WMS(WindowsManagerService)就是对surface的管理,或者说是一个大管家。它负责协调各方面资源。 ViewRoot就是一个个演员,负责表演(产生surface)。 从IO系统角度而言,WMS至少要干这几件事。 全局窗口管理 全局事件派发 键盘 触摸屏 1.WMS综述 1)WMS将以同AMS等一样的形式,系统server的一部分。 由SystemServer负责启动 知道系统关闭才能停止 发生异常的时候,能够自我恢复 2)SurfaceFlinger 和WMS将有很多交集。 3)有显示需求的图层。可以想见,界面显示是分不同层级的。 4)inputManagerService 当有按键或者触摸事件时,WMS时最好的管理员。 5)AMS 同WMS 也有交互。 6)Bind交互 从WMS窗口的实现来讲,主要包含如下子功能 窗口的添加和删除 启动窗口 窗口动画 窗口大小 窗口层级 事件派发 1.1WMS的启动 services\java\com\android\server\SystemServer.java private void startOtherServices() { inputManager