无法在某些Android设备上运行应用程序

时间:2014-07-04 20:52:02

标签: android qt opengl-es qml qtquick2

我制作了一个QtQuick程序,我发现Qt使用的是OpenGL ES 2.0库。 我能够为所有设备构建和部署我的应用程序,我已经包括AVD。

但是在某些设备上我收到错误日志:

W/Qt      ( 1246): eglconvenience/qeglconvenience.cpp:289 (void* QEglConfigChooser::chooseConfig()): Cant find EGLConfig, returning null config
W/Qt      ( 1246): eglconvenience/qeglconvenience.cpp:289 (void* QEglConfigChooser::chooseConfig()): Cant find EGLConfig, returning null config
W/Qt      ( 1246): scenegraph/qsgcontext.cpp:438 (virtual void QSGRenderContext::initialize(QOpenGLContext*)): QSGContext::initialize: depth buffer support missing, expect rendering errors
W/Qt      ( 1246): scenegraph/qsgcontext.cpp:440 (virtual void QSGRenderContext::initialize(QOpenGLContext*)): QSGContext::initialize: stencil buffer support missing, expect rendering errors
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
W/Qt      ( 1246): opengl/qopenglshaderprogram.cpp:319 (bool QOpenGLShaderPrivate::compile(QOpenGLShader*)): QOpenGLShader::compile(Vertex): failed
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
W/Qt      ( 1246): opengl/qopenglshaderprogram.cpp:319 (bool QOpenGLShaderPrivate::compile(QOpenGLShader*)): QOpenGLShader::compile(Fragment): failed
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
E/libEGL  ( 1246): called unimplemented OpenGL ES API
D/Qt      ( 1246): scenegraph/coreapi/qsgbatchrenderer.cpp:155 (QSGBatchRenderer::ShaderManager::Shader* QSGBatchRenderer::ShaderManager::prepareMaterial(QSGMaterial*)): Renderer failed shader compilation: 
D/Qt      ( 1246): "" 
F/libc    ( 1246): Fatal signal 11 (SIGSEGV) at 0x00000008 (code=1), thread 1283 (QSGRenderThread)

有些东西是其他OpenGL 3.0,Qt不支持。 你知道怎么解决吗?

1 个答案:

答案 0 :(得分:0)

重新安装Android SDK后,Androind NDK,JDK,Qt到最新版本的应用程序在AVD上运行良好。

已安装的版本:

  • Android SDK:23.0.2
  • Android NDK:r9d
  • JDK:1.6
  • Qt:5.2.1
  • Os:OS X 10.9.3