我正在OpenGLES1.1中编写游戏(使用Android静态API(GLES11)),每次我的游戏活动进入后台(按Home)时,都会返回到黑屏中。
我知道纹理和资源已经丢失,但主要问题是GLThread不再运行(游戏逻辑基于GLThread运行)
我从logcat得到的错误是:
E/GLSurfaceView(2604): eglCreateWindowSurface
E/GLSurfaceView(2604): java.lang.IllegalArgumentException: Make sure the SurfaceView or associated SurfaceHolder has a valid Surface
E/GLSurfaceView(2604): at com.google.android.gles_jni.EGLImpl._eglCreateWindowSurface(Native Method)
E/GLSurfaceView(2604): at com.google.android.gles_jni.EGLImpl.eglCreateWindowSurface(EGLImpl.java:92)
E/GLSurfaceView(2604): at android.opengl.GLSurfaceView$DefaultWindowSurfaceFactory.createWindowSurface(GLSurfaceView.java:808)
E/GLSurfaceView(2604): at android.opengl.GLSurfaceView$EglHelper.createSurface(GLSurfaceView.java:1077)
E/GLSurfaceView(2604): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1471)
E/GLSurfaceView(2604): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
我正在使用glSurfaceView。暂停活动onPause和glSurfaceView。取消暂停活动onResume。。。有人能给我一个提示或解释一下到底是什么导致了这个错误吗?
每次调用onResume时,我都会重新创建GLSurfaceView(或者在第一次调用时创建它)。。。