三星 Galaxy J1 4G 上的 webRTC 应用程序崩溃
Posted
技术标签:
【中文标题】三星 Galaxy J1 4G 上的 webRTC 应用程序崩溃【英文标题】:webRTC application crash on Samsung Galaxy J1 4G 【发布时间】:2018-04-17 12:49:30 【问题描述】:我正在开发视频通话 android 应用程序,该应用程序可以在 Nexus 4、Moto g2、Moto g3、Moto e 等设备上进行视频通话。但是当我在三星 Galaxy J1 4G 上发起通话时,它崩溃了。
这是堆栈跟踪:
E/AndroidRuntime: FATAL EXCEPTION: gl_surface: EglRenderer
Process: com.testvideo, PID: 30509
java.lang.RuntimeException: glUseProgram: GLES20 error: 1282
at org.webrtc.GlUtil.checkNoGLES2Error(GlUtil.java:29)
at org.webrtc.GlShader.useProgram(GlShader.java:118)
at org.webrtc.GlRectDrawer.prepareShader(GlRectDrawer.java:195)
at org.webrtc.GlRectDrawer.drawOes(GlRectDrawer.java:118)
at org.webrtc.VideoFrameDrawer.drawTexture(VideoFrameDrawer.java:38)
at org.webrtc.VideoFrameDrawer.drawFrame(VideoFrameDrawer.java:205)
at org.webrtc.EglRenderer.renderFrameOnRenderThread(EglRenderer.java:585)
at org.webrtc.EglRenderer.bridge$lambda$0$EglRenderer(EglRenderer.java)
at org.webrtc.EglRenderer$$Lambda$5.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at android.os.HandlerThread.run(HandlerThread.java:61)
我经历了这个问题Android WebRtc Local Video Stream is not displaying on marshmallow but works on lollipop,但它有点不同。在我的情况下,应用程序仅在三星 Galaxy J1 4G 上崩溃 操作系统:5.1.1 型号:SMJ120G
我正在使用以下库/依赖项:
org.webrtc:google-webrtc:1.0.+ fi.vtt.nubomedia:utilities-android:1.0.2@aar如果有人可以提出任何建议,那就太好了。 提前致谢:)
【问题讨论】:
我在 org.webrtc v. 1.0.30039 中也会定期收到相同的错误。有什么解决办法吗? 【参考方案1】:问题与硬件加速有关。当我禁用硬件加速问题得到解决。
PeerConnectionFactory.initializeAndroidGlobals
在这里,我为 hardwareAccelration 传递了 false。
【讨论】:
在 org.webrtc v. 1.0.30039 中不再有这样的东西了。以上是关于三星 Galaxy J1 4G 上的 webRTC 应用程序崩溃的主要内容,如果未能解决你的问题,请参考以下文章
Android 7.x 上的三星 Galaxy 设备出现大量 OutOfMemoryError
三星 Galaxy s3 4.1.1 和 4.1.2 上的 Canvas globalCompositeOperation 问题