Android 核心分析(12) -----Android GEWS窗口管理之基本架构原理

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

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

 


 

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

 

 

 

 

 

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

 

后面我们将通过ClientWM Service分别加以分析。

 

  • 0
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 19
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值