surfaceFlinger
文章平均质量分 78
干一行,爱一行
white
展开
-
androidP Surface到SurfaceFlinger -->surface -> BufferQueue(一)
BufferQueue前言介绍BufferQueue::createBufferQueue前言结合前面的一篇文章创建Surface, 我们知道最后会调用到SurfaceFlinger的CreateLayer() 方法,然后会层层调用到 BufferQueue::createBufferQueue(),今天我们就来理理BufferQueue。介绍首先我们要知道BufferQueue的大致工作原理,一个surface会和一个Producer及生产者App进行绑定去产生view数据,然后会通过onFram原创 2021-12-28 22:04:19 · 1850 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger -->创建Surface (二)
创建Surface (二)前言SurfaceFlinger createLayer前言我们接着androidP Surface到SurfaceFlinger -->创建Surface (一)来看,当new SurfaceControl之后在其构造函数内都做了什么?这一步跟下去就到了SurfaceFlinger了。SurfaceFlinger createLayer对于上层应用所建立的Surface对应到SurfaceFlinger 就是 createLayer我们来跟代码吧,还是从 Surface原创 2021-12-21 21:21:16 · 1335 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger -->创建Surface (一)
创建Surface前言ViewRootImpl创建Surface前言 我们前面已经分析过Activity启动如何去连接到SurfaceFlinger了,接下来就看Activity的Surface的创建到SurfaceFlinger的过程。ViewRootImpl创建Surface 在调用了WindowManagerGlobal的addView方法之后会首先去创建一个ViewRootImpl将View和Window关联起来,在new ViewRootImpl的时候就创建了一个Surface对象原创 2021-12-20 20:56:42 · 2861 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger --> Activity 连接 SurfaceFlinger(二)
Activity 连接 SurfaceFlingerSurfaceSession持有SurfaceComposerClientSurfaceSession持有SurfaceComposerClient紧接这上面段落继续跟踪SurfaceComposerClient,我们从Activity 连接 SurfaceFlinge(一)知道,在addWindow的时候都会去重新创建一个Session去和SurfaceFlinger进行连接,在Session的构造函数里面就会去new SurfaceComposer原创 2021-12-17 20:46:30 · 1255 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger --> Activity 连接 SurfaceFlinge(一)
Activity 连接 SurfaceFlinger前言一、Activity 连接 SurfaceFlinger前言一直想要分析一下surface 的创建到SurfaceFlinger之间的关系,由于它们之间牵扯的东西比较多,终于感觉理的差不多了,记录一下。一个应用想要完成一个View的显示大致需要以下三部1、应用需要先和SurfaceFlinger建立通道,及连接SurfaceFlinger 拿到SurfaceFlinger 的远端代理。2、向SurfaceFlinger申请去创建Surface原创 2021-12-15 21:16:42 · 3326 阅读 · 0 评论