如何编写同步到设备刷新率的应用程序?

时间:2013-06-19 06:18:57

标签: android animation mobile graphics

iPad的一个应用程序网站称 - “充分利用iPad的图形处理技术,创造出每秒60帧的流畅体验。”哇!此外,谷歌Chrome的动画速率与显示刷新频率匹配,例如60Hz。

我的问题:使用移动平台,如何编写同步设备屏幕刷新率并提供流畅动画的应用程序?

1 个答案:

答案 0 :(得分:0)

您应该使用动画API。例如,参见ValueAnimator的文档:

http://developer.android.com/reference/android/animation/ValueAnimator.html#setFrameDelay%28long%29

本文档说:“当动画系统使用外部定时源(例如显示刷新率(vsync))来控制动画时,可以忽略帧延迟。”我不知道所有设备是否都使用vsync(会很好奇地测试),但听起来非常像是获得动画平滑性的正确方法。

请参阅有关属性动画的开发人员指南: http://developer.android.com/guide/topics/graphics/prop-animation.html

此外,还有一个API可以为您提供刷新率: http://developer.android.com/reference/android/view/Display.html#getRefreshRate%28%29

((WindowManager)getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getRefreshRate();