android - 控制 Android 设备上的显示刷新率

标签 android

还不是开发人员,只是想看看 Android 应用程序是否可以满足我的需求..

我需要什么:

简单的应用程序,以固定频率以一定强度在屏幕上显示单一颜色的全帧!我需要它来实现尽可能高分辨率的同步目的(通过以尽可能高的固定频率改变已知模式中的强度来实现)。

我有什么问题:

  1. Android 设备是否运行 固定显示频率或有 任何方式将其设置为固定 比如说 60fps 的频率?

  2. 如果固定频率可以 实现了,有没有vsync中断 或类似的东西让我 改变屏幕上的强度 在正确的时间。

  3. 如果以上两点都可以 实现了,我需要哪种方法 采取。我想我需要看看 在 OpenGL ES 和 NDK .... 谁能指点我 正确的方向....

最佳答案

我希望刷新率固定在硬件或显示驱动程序级别。有 an API for finding out what it is , 但我怀疑你是否可以设置它。

我写了一个实现 40fps 固定帧率的游戏。基本技术是将所有内容绘制到屏幕外缓冲区中……使用 GL 会自动发生这种情况,但如果使用 Canvas 则必须手动完成。

在屏幕外绘制场景这一昂贵且可变长度的工作完成后,您可以阻塞渲染线程(或执行其他工作),直到渲染时间到来。这样做将确保每一帧以均匀的间隔显示。这可以让您获得流畅的 Action ,并且不会因绘制过多而消耗电池(很多基于 GL 的应用程序都会这样做,因为它们无缘无故地使用 RENDERMODE_CONTINUOUSLY)。

关于android - 控制 Android 设备上的显示刷新率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3966468/

相关文章:

android - 在 Android 应用程序中嵌入 YouTube 直播

java - 获取数组列表的中位数长度

java - 使用谷歌地图计算实时行进距离

android - Android 中的 ViewPager 滚动问题

android - 更新到 Android Studio Bumblebee 2021.1.1 后,Android Studio 中的 Gradle 项目同步出错

android - 如何监听写入Preferences DataStore的成功或失败结果?

android - 如何在 flutter (android)应用程序中使用 C++ 代码?

android - 如何在字符串资源中使用十进制数(Double 数据类型)作为占位符

android - 如何唯一标识android设备以跟踪设备

android - 关于 http ://stackoverflow. com/questions/2381560/how-to-group-a-3x3-grid-of-radio-buttons