My problem is pretty much the same as here.
This would also be the answer, if glBlendFuncSeparate was available for me:
glBlendFuncSeparate(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ZERO, GL_ONE);
However, since I need to provide support for MALI-400MP (Samsung Galaxy Nexus S II), I can't use glBlendFuncSeparate (GL_OES_blend_func_separate extension not present).
use of glColorMask is adviced, but how do I use it properly? Is there any other way to do this?
It seems pretty well answered in the other question, but if all you want to do is disable writing to the alpha channel, you just call glColorMask(true,true,true,false);
before drawing your blended objects. This locks the alpha layer from being modified while it is being written.