购物网站开发 项目描述,中文设置wordpress,做企业网站要不要我们自己提供网站相关的图片?,上杭网站开发从上面的描述就可以知道#xff0c;每一个Activity组件都有一个对应的ViewRoot对象、View对象以及WindowManager.LayoutParams对象。这三个对象的对应关系是由WindowManagerImpl类来维护的。具体来说#xff0c;就是由WindowManagerImpl类的成员变量mRoots、mViews和mParams所… 从上面的描述就可以知道每一个Activity组件都有一个对应的ViewRoot对象、View对象以及WindowManager.LayoutParams对象。这三个对象的对应关系是由WindowManagerImpl类来维护的。具体来说就是由WindowManagerImpl类的成员变量mRoots、mViews和mParams所描述的三个数组来维护的。例如假设一个应用程序进程运行有两个Activity组件那么WindowManagerImpl类的成员变量mRoots、mViews和mParams所描述的三个数组的大小就等于2其中mRoots[0]、mViews[0]和mParams[0]对应于第一个启动的Activity组件而mRoots[1]、mViews[1]和mParams[1]对应于第二个启动的Activity组件。Android应用程序窗口Activity实现框架简要介绍和学习计划_android创建c层窗口-CSDN博客
在WindowManagerService服务中每一个Android应用程序进程都对应有一个SurfaceComposerClient对象。由于每一个SurfaceComposerClient对象都关联有一个SurfaceSession对象因此我们又可以推断出每一个Android应用程序进程在WindowManagerService服务中都对应有一个SurfaceSession对象。由于每一个SurfaceSession对象所属的Session对象是一个Binder本地对象并且它的Binder代理对象是保存在Android应用程序进程这一侧的ViewRoot类的静态成员变量sWindowSession中因此我们又可以推断出每一个Android应用程序进程在WindowManagerService服务都有一个对应的Session对象。综合起来就是每一个Android应用程序进程在WindowManagerService服务这一侧对应有一个Session对象、一个SurfaceSession对象以及一个SurfaceComposerClient对象。由于每一个Android应用程序进程都可以运行若干个Activity组件因此我们又可以说Activity组件与WindowServiceManager服务这一侧的Session对象、SurfaceSession对象以及SurfaceComposerClient对象是多对一的关系。