通过文档的查找,以及源码的观察,发现android的 GPU信息需要通过opengl 来获取,android framwork层提供GL10来获得相应的参数,而GL10要在使用自定义的View时才可以获得,因此给出以下是获得gpu信息的 例子:
1.class DemoRenderer implements GLSurfaceView.Renderer {
public void onSurfaceCreated(GL10 gl, EGLConfig config)
{
Log.d("SystemInfo", "GL_RENDERER = " +gl.glGetString(GL10.GL_RENDERER));
Log.d("SystemInfo", "GL_VENDOR = " + gl.glGetString(GL10.GL_VENDOR));
Log.d("SystemInfo", "GL_VERSION = " + gl.glGetString(GL10.GL_VERSION));
Log.i("SystemInfo", "GL_EXTENSIONS = " + gl.glGetString(GL10.GL_EXTENSIONS));
}
@Override
public void onDrawFrame(GL10 arg0) {
// TODO Auto-generated method stub
}
@Override
public void onSurfaceChanged(GL10 arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
}
2.
class DemoGLSurfaceView extends GLSurfaceView {
DemoRenderer mRenderer;
public DemoGLSurfaceView(Context context) {
super(context);
setEGLConfigChooser(8, 8, 8, 8, 0, 0);
mRenderer = new DemoRenderer();
setRenderer(mRenderer);
}
}
3.在Activity中 new 一个 DemoGLSurfaceView 对象
4.设置这个View对象
有问题欢迎留言共同探讨