美文网首页
Android Framework学习之surfaceView和

Android Framework学习之surfaceView和

作者: 一只二凡子 | 来源:发表于2022-12-22 09:12 被阅读0次

一般一个Activity对应一个DecorView,一个DecorView对应一个ViewRootImpl,一个ViewRootImpl持有一个Surface,UI线程即创建ViewRootImpl所在线程。一个Surface持有一个Canvas,一个Canvas持有一个SkBitmap,SkBitmap里有绘制缓存区。

View绘制只能发生在UIThread。SurfaceView拥有单独的Surface,即单独的Canvas和绘制缓存区,绘制可发生在用户创建的子线程。

• Android UI的显示原理

vsync信号来了之后,通知应用去绘制,每个decoView对应一个ViewrootImpl对象,生成view Tree,Window再管理view的层级。应用向vsync申请绘制,在下一个信号来了之后,绘制到buffer,传递gbp到surfaceFlinger,还原buffer,并显示当前buffer的内容

• Surface的底层原理

通过gbp对应内存描述符,应用和系统对buffer一一对应

相关文章

网友评论

      本文标题:Android Framework学习之surfaceView和

      本文链接:https://www.haomeiwen.com/subject/glwhqdtx.html