微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android.graphics程序包和SurfaceFlinger之间的关系

如何解决android.graphics程序包和SurfaceFlinger之间的关系

| 我想了解
android.graphics package
SurfaceFlinger
间的关系。 根据Android Graphics文档,有两种绘制2D图形的方法。一种是使用VIEW对象,另一种是直接绘制到Canvas。正如我从文档中读到的那样,当直接绘制到画布上时,可以创建一个线程来管理链接到ѭ1的ѭ2。我在代码中还注意到
android.graphics
包只是SKIA库的包装。使用JNI调用SKIA函数。因此,我无法确定这些呼叫是否仍然发送到SurfaceFlinger。 这是否意味着在将View对象用于简单的2D图形时,不需要SurfaceFlinger?还是在屏幕上绘制任何类型的图形时始终使用Surfaceflinger?有输入吗?     

解决方法

我的其他帖子已经回答了这个问题。 Android SurfaceFlinger 根据@hackbod(我在进一步分析源代码时也证明了这一点),   SurfaceFlinger并不是绘制窗口的原因。它为窗口分配一个帧缓冲区,应用程序中运行的框架无需与SurfaceFlinger交互即可直接将其绘制到该缓冲区。绘制窗口时,唯一涉及SurfaceFlinger的交互是在绘制完框架后将最终的新框架缓冲区合成到屏幕上。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。