今天有多少Android设备支持GLSurfaceView.setPreserveEGLContextOnPause?

时间:2015-06-26 08:45:02

标签: android opengl-es opengl-es-2.0

我不需要确切的数字,百分比就足够了。 例如,如果我使用4.0分钟的SDK版本开发应用程序 - 我如何确保保留上下文?可能它取决于opengl-es版本吗?

我试图找到有限的egl上下文但没有找到任何筹码的信息。

我需要知道的原因 - 我不想实现一个特殊的缓存子系统,它将在应用程序恢复后重新加载我的纹理。我准备放弃一些支持的设备(如果少于5-7%)

2 个答案:

答案 0 :(得分:3)

似乎OpenGL-ES 2.0和转发都允许多个EGL上下文。这就是GLSurfaceView.GLThreadManager.checkGLESVersion()方法所假设的。如果您有多个上下文,则暂停时不需要终止EGL,暂停时不释放EGL上下文。

另外,从GLSurfaceView.GLThreadManager源代码(第1908行),我们在checkGLESVersion()方法之后有以下注释:

This check was required for some pre-Android-3.0 hardware. 
Android 3.0 provides support for hardware-accelerated views, 
therefore multiple EGL contexts are supported on all Android 3.0+ EGL drivers.

在Grepcode GLSurfaceView.GLThreadManager

上查看更多详情

答案 1 :(得分:0)

因为API函数是11级所以Honeycomb。根据Android Site,其94.0%的设备 Android Platform versions