【发布时间】:2013-02-04 12:28:15
【问题描述】:
我正在使用 OpenGL ES 2.0 开发一款安卓游戏。我的一些用户(约 5%)面临这样的问题:锁定/解锁设备或按下主页按钮并恢复应用后出现灰屏。我的意思是这发生在调用 onResume 和 onPause 之后。
屏幕是灰色的,因为背景是用这种颜色填充的:
GLES20.glClearColor(.5f, .5f, .5f, 1f);
这意味着在某些手机上恢复应用后,什么都不会绘制。
我正在使用虚拟缓冲区对象(将所有缓冲区上传到 GPU)。它们在 onResume 之后重新创建,与所有纹理和着色器相同。
我还在活动的 onPause 和 onResume 中调用了 surfaceView.onPause 和 .onResume。
我不明白为什么我的应用在某些手机上恢复后没有绘制任何东西(在大多数手机上一切正常),我希望有人能给我一些关于为什么会发生这种情况的想法。
【问题讨论】:
-
我也有同样的问题。但我在 LogCat
E/BpSurfaceComposerClient: Failed to transact (-1)中确实有一行。