Android 画面显示流程三

画面更新流程

从底层的显示硬件,SOC和DDIC的接口,linux和Userspace的图形接口以及APP与SurfaceFlinger,HWC service三者关系,了解了帧数据流动所经过的关键节点,并重点讨论了帧buffer是如何管理的,以及在流动过程中是如何做到同步的。接下来我们将从应用侧角度从山到下看一下应用所绘制的画面是如何使用到我们上面所设计的流程的。

画布的申请

从5.4的讨论可知,应用侧对图层的操作是以Surface为接口的,其定义如下,它包含了一些更新画面相关的核心api, 比如dequeueBuffer/queueBuffer/connect/disconnect等等。

Surface.h (frameworks\native\libs\gui\include\gui)
class Surface
    : public ANativeObjectBase<

你可能感兴趣的:(android,surfaceflinger)