关于 QQuickItem::grabToImage(const QSize & targetSize = QSize())在部分安卓手机上无法使用的问题



  • 大家好,阳神好,最近在进行开发二维码扫描时,将照相机里的画面直接抓给QZXing库解析,在小米手机上使用QQuickItem::grabToImage是正常的,但在华为手机上提示W/GLConsumer(19518): [unnamed-19518-0] bindTextureImage: clearing GL error: 0x502的问题,将抓取的图片保存起来看是纯黑的,检查发现华为使用的是I/OpenGLRenderer(19518): Initialized EGL, version 1.4 ,小米使用的是OpenGL ES Shader Compiler Version: E031.24.00.15,是不是 version 1.4不完全兼容,貌似现在QTBUG库里IOS的grabToImage还存在,https://bugreports.qt.io/browse/QTBUG-45902 ,请问大神有没有一些个解决办法,或者替代的方法,谢谢啦



  • @fish 不同的设备支持OpenGL的等级是不一样的。有些机器是比较老的,有些机器是不支持OpenGL ES 2.0的。这个跟不同特性的PC是一样的。所以如果要用到了OpenGL ES 2.0的所有特性,不一定所有的机器都获得兼容性的支持。



  • 那如果想要抓取屏幕图片有没有通用的方法呢



  • @fish 如果是Android的话,看看是否可以调用Android原生的方法来实现。


登录后回复
 

与 萌梦社区 的连接断开,我们正在尝试重连,请耐心等待