如何检查是否保留了EGL上下文?

时间:2012-03-29 10:04:47

标签: android opengl-es

setPreserveEGLContextOnPause Android功能的文档说明如下:

“...如果设置为true,那么当GLSurfaceView暂停时,可以保留EGL上下文 ...”

如何在恢复活动时检查EGLContext是否被保留?

如果未保存EGLContext,我需要重新加载所有纹理,这就是为什么它对我很重要。

我能找到的唯一可能与此问题相关的是getPreserveEGLContextOnPause()方法。但是这个方法只有在保存EGLContext时才会返回true,即使保存它也可能会被系统删除,所以这似乎没什么帮助。

1 个答案:

答案 0 :(得分:2)

根据this text,你不需要。上下文丢失是隐含的,无法观察到。调用onSurfaceCreated()时,您知道上下文(已经丢失|从未创建过),必须重新创建。

或者,一种可能的解决方法是创建一些实际上从未使用过的小对象,但指出在此期间上下文没有丢失。不过,我不确定这是否会奏效。