外观
如何理解FrameTimeline 的 Expected 与 Actual?
标准回答
Expected表示系统为该帧预测的时序,Actual表示实际执行和提交进展。应用侧Actual涵盖相关绘制及GPU完成/提交边界,并不直接等于屏幕呈现时间;SurfaceFlinger侧还涉及后续合成和显示。
用帧token与flow把同一帧关联起来,查看延迟类别、是否按时完成、是否高延迟以及对应图层。应用按时结束而显示仍晚,应该继续追显示侧;应用自己超预算则先看主线程、RenderThread和GPU。
FrameTimeline需要Android12及以上,数据源、Surface类型和版本覆盖都要确认。缺少某条轨迹不能证明对应层没有问题。
追问与回答
60FPS为什么仍然感觉跟手性差
连续每帧都延后固定几个刷新周期,帧间隔可能稳定,但输入反馈被缓冲推迟。要区分帧率稳定与输入到显示的延迟。
参考资料
内容来源
- Android 与 AI 工程 Wiki · 原条目
q031