Before making game apps, I want to have any certain smartphone device brands that runs on OpenGL. I have to make a code for images that doesn't need to required power of 2 images so that I can resize the images independently from the start. However, some images appeared in white instead of the appearance that I expected like the old model phone T-Mobile on Android 1.6 for example after I disabled the power of 2 code. The only device I've known that worked and displayed image sprites properly is the Google Nexus 7. Can you tell me either other phone models that can display images without the need of power of 2 and will not display white images instead? Please give me an example at least. Thank you.
Well, AFAIK, OpenGL ES 2.0 supports non-power-of-2 (NPOT) textures, but only for certain configurations. Check this answer here for details on this:
For OpenGL ES 1.x, NPOT textures are not supported by default. There are various (mostly non-standard) extentions that allow you do to this but they are manufacturer/video-card/driver specific (i.e. for some Apple IOS 2 devices there's a GL_APPLE_texture_2D_limited_npot that allows you to do that).
My advice is :
if you don't really need to, don't use NPOT textures. Even if they do work, you can have big performance penalties because of this.
if you absolutely have to use NPOT textures, code using the OpenGL ES 2.0 API only (no OpenGL ES 1.x). Most Android devices already support OpenGL ES 2.0 so you should be fine
if you find yourself targeting a device that only supports OpenGL ES 1.x, check its video card specs to see if it has any extension allowing for NPOT textures (and if it does, check to see under which conditions that extension works, for example it can be that it will allow you to have NPOT textures, but not support mip-mapping on them, etc).