如何在没有设备的情况下在Nexus 4上调试OPENGL ES 2.0错误?

时间:2013-01-31 13:10:29

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

我有一个带有一堆照片过滤器的Android应用程序。过滤器是使用OpenGL ES 2.0实现的,所以当我想保存最终图像时,我会调用glReadPixels。它适用于我测试过的每台设备,但它似乎无法在Nexus 4上运行。用户报告说他们可以应用过滤器,但是当他们保存最终图像时,他们无法在设备上找到它。我想知道是否有任何方法可以模拟nexus 4并在模拟器上测试我的应用程序?我已经在模拟器上进行了测试,它也可以正常工作,如果有人与Nexus 4有类似的问题,那将会很好。

我的glReadPixels致电。

GLES20.glReadPixels(0, 0, saveWidth, saveHeight, GLES20.GL_RGBA, GLES20.GL_UNSIGNED_BYTE, mPixels);

1 个答案:

答案 0 :(得分:1)

添加其他日志记录并让一些测试用户向您发送输出;这可以帮助您缩小特定问题的位置,无论是glReadPixels还是文件保存。特别是,使用glGetError()并记录其值,并在文件I / O周围添加try / catch块:

try {
    .... file ops
} catch (Exception e) {
    e.printStackTrace();
}