java - Android java.lang.ClassNotFoundException (webrtc)

标签 java android classnotfoundexception

我的项目引用 webrtcpeer-android作为,当它在设备(android 4.4.4 api 17)上运行时,它崩溃,错误:

08-26 11:53:38.959 6712-6712/fi.vtt.nubotest W/System.err: java.lang.NoClassDefFoundError: org/webrtc/MediaCodecVideoDecoder$DecoderOutputBufferInfo 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.Runtime.nativeLoad(Native Method) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.Runtime.doLoad(Runtime.java:421) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.Runtime.loadLibrary(Runtime.java:362) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.System.loadLibrary(System.java:526) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at org.webrtc.Logging.(Logging.java:27) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at org.webrtc.VideoRendererGui.setView(VideoRendererGui.java:416) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at fi.vtt.nubotest.PeerVideoActivity.onCreate(PeerVideoActivity.java:177) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.Activity.performCreate(Activity.java:5303) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1091) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2165) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2255) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.ActivityThread.access$800(ActivityThread.java:142) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1213) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.os.Looper.loop(Looper.java:136) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5217) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.reflect.Method.invokeNative(Native Method) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.reflect.Method.invoke(Method.java:515) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:818) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at dalvik.system.NativeStart.main(Native Method) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "org.webrtc.MediaCodecVideoDecoder$DecoderOutputBufferInfo" on path: DexPathList[[zip file "/data/app/fi.vtt.nubotest-2.apk"],nativeLibraryDirectories=[/data/app-lib/fi.vtt.nubotest-2, /vendor/lib, /system/lib]] 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:497) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:457) 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest W/System.err: ... 21 more 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest E/rtc: # # Fatal error in ../../talk/app/webrtc/java/jni/classreferenceholder.cc, line 136 # Check failed: !jni->ExceptionCheck() # error during FindClass: org/webrtc/MediaCodecVideoDecoder$DecoderOutputBufferInfo # 08-26 11:53:38.969 6712-6712/fi.vtt.nubotest A/libc: Fatal signal 6 (SIGABRT) at 0x00001a38 (code=-6), thread 6712 (fi.vtt.nubotest)

但是当我使用webtrcpeer-android 时作为一个jar,它工作正常,有人可以帮助我,谢谢!

Android ClassNotFoundException: Didn't find class on path

Android ClassNotFoundException: Didn't find class on path

上面的方法我都试过了,但是不行。

最佳答案

在您的 proguard-rules.pro 中添加以下行

-keep 类 org.webrtc.** { *; }

关于java - Android java.lang.ClassNotFoundException (webrtc),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39160258/

相关文章:

java - 有没有办法在 play 框架中的拦截器和 Action 之间共享数据?

android - 既然 apache 的 MultipartEntityBuilder 已被弃用,使用 Volley 库上传图像或文件的最佳方式是什么?

Java错误: java. lang.ClassNotFoundException:

java - android/graphics/bitmapfactory 上的 NoClassDefFoundError

java - 找出 checkin 更改了哪些方法?

java - 如何在 Jersey REST 服务方法参数上使用 jackson mixin

java - Eclipse 中的 LWJGL/opengl

java - 当我更改文本并将其显示在线程中的 UI 上时,什么也没做(JAVA)

android - 关闭 IME onEditorAction

java - 系统范围 Jar 引发未找到类异常