I am modifying the version of the android version of the 2d texture example from OpenGl ES2.0 programming guide to change the fragment shader. this is written in pure Java and doesn’t use the NDK.
The vanilla example works just fine on my phone, but when I change the shader code it no longer works. This is because my modified shader doesn’t compile (obviously), but I can’t find the cause of the problem as glGetShaderInfoLog returns an empty string.
I’ve done a search on this issue, and apparently, as of Jul 22nd, it was a known issue, but I was wondering what ways there are of getting around it. One post I found said they had written an NDK wrapper for the function, but being new to Android development I don’t really know how to do this.
You’re suffering from a bug. I worked around by using the old GL ES 2.0 bindings to get a functioning glGetShaderInfoLog. Like this:
I still use the standard GLES20 wrapper library for everything else, so this was simple to drop into my codebase. The two wrappers apparently can coexist without any problems.