设为首页 加入收藏

TOP

Android4.0 WindowManagerService的分析(三)
2014-11-24 11:47:46 来源: 作者: 【 】 浏览:3
Tags:Android4.0 WindowManagerService 分析
utInputChannel != null && (attrs.inputFeatures


& WindowManager.LayoutParams.INPUT_FEATURE_NO_INPUT_CHANNEL) == 0) {


String name = win.makeInputChannelName();


InputChannel[] inputChannels = InputChannel.openInputChannelPair(name);


win.setInputChannel(inputChannels[0]);


inputChannels[1].transferTo(outInputChannel);



mInputManager.registerInputChannel(win.mInputChannel, win.mInputWindowHandle);


}


}


在windowState.java中调用attach:


void attach() {


mSession.windowAddedLocked();


}


最后在Session.java中实现添加:


void windowAddedLocked() {


if (mSurfaceSession == null) {


mSurfaceSession = new SurfaceSession();


mService.mSessions.add(this);


}



mNumWindow++;


}



至此,正式建立activity的client和windowManagerService之间的联系:


ViewRootImpl 通过IWindowSession 访问 WindowManagerService


WindowManagerService通过IWindow访问ViewRootImpl


首页 上一页 1 2 3 4 下一页 尾页 3/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android4.0 Power、home、menu等.. 下一篇Cygwin配合NDK开发Android程序

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·“我用Java 8”已成 (2025-12-26 11:19:54)
·下载 IntelliJ IDEA (2025-12-26 11:19:52)
·Java是什么?(通俗 (2025-12-26 11:19:49)
·雾里看花:真正意义 (2025-12-26 10:54:36)
·C++——模板(超详细 (2025-12-26 10:54:34)