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


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之间的关系如下:

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

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

更多相关文章

  1. Android(安卓)核心分析(12) -----Android(安卓)GEWS窗口管理之基
  2. Android的Window类 [转]
  3. Android系统Surface机制的SurfaceFlinger服务渲染应用程序UI的过
  4. Android(安卓)之 Window、WindowManager 与窗口管理
  5. [Android]直接使用代码建立Android视图元件
  6. Android的Window类
  7. android的窗口机制分析------事件处理
  8. Android(安卓)Display System --- Surface Flinger
  9. 软键盘显示及属性android:windowSoftInputMode使用总结 & [转一

随机推荐

  1. 2020年20种最佳Android应用程序模板
  2. Android使用回调接口
  3. Android下使用OpenCV
  4. 从零学Android(十二)、Android中的图形和动
  5. Android分类列表之RecyclerView-ItemDeco
  6. Genymotion - 速度飞一般的Android虚拟机
  7. Android的MediaPlayer架构介绍
  8. Android与J2ME区别之我见(3)
  9. (推荐)彻底解析Android缓存机制——LruCach
  10. 写给Android开发者的Kotlin入门