Android 核心分析之十二Android GEWS窗口管理之基本架构原理

Android GWES之窗口管理之基本构架原理

  Android的窗口管理是C/S模式的。Android中的Window是表示Top Level等*窗口的概念。DecorView是Window的Top-Level View,这个View我称之为主View,DecorView会缺省的attach到Activity的主窗口中。主View被加入到WindowManager中,WM使用WindowState与这个主View对应。
                      Android 核心分析之十二Android GEWS窗口管理之基本架构原理

321.jpg (9.59 KB, 下载次数: 0)

下载附件  保存到相册

2012-3-19 11:48 上传

 

  Activity建立一个主窗口后,在将主窗口添加到WindowManager时,首先要建立WindowManager代理对象,并打开一个会话(实现IWindowSession AIDL接口),并维持该会话。Activity将通过该会话与WindowManager建立联系,这个Session是C/S体系的基础,Client通过WindowSession将window加入到Window Manager中。一个完整的窗口概念横跨了View,ViewRoot,WindowManager Service。Window,DecorView,View,IWindow ,ISession,WindowState之间的关系如下:

Android 核心分析之十二Android GEWS窗口管理之基本架构原理

654.jpg (15.11 KB, 下载次数: 0)

下载附件  保存到相册

2012-3-19 11:49 上传

 

  客户端的Activity通过Session会话与WindowManager建立对话,而WindowManager则通过IWindow接口访问Client,将消息传递到Client端,通过消息分发渠道,将消息传递到处理函数OnXXX。

  后面我们将通过Client,WM Service分别加以分析。

上一篇:Android 7.1 GUI系统-窗口管理WMS-Surface管理(四)


下一篇:Javascript高级编程学习笔记(42)—— DOM(8)Attr类型