JakeWharton / Telecine

Record full-resolution video on your Android devices.
Apache License 2.0
2.47k stars 460 forks source link

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/jakewharton/telecine/TelecineTileService; #164

Closed shuBomb closed 7 years ago

shuBomb commented 7 years ago

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/jakewharton/telecine/TelecineTileService; at com.jakewharton.telecine.DaggerTelecineComponent.initialize(DaggerTelecineComponent.java:192) at com.jakewharton.telecine.DaggerTelecineComponent.(DaggerTelecineComponent.java:97) at com.jakewharton.telecine.DaggerTelecineComponent.(DaggerTelecineComponent.java:20) at com.jakewharton.telecine.DaggerTelecineComponent$Builder.build(DaggerTelecineComponent.java:277) at com.jakewharton.telecine.TelecineApplication.onCreate(TelecineApplication.java:22) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1015) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4569) at android.app.ActivityThread.access$1500(ActivityThread.java:154) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1371) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5276) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:911) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:706) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.jakewharton.telecine.TelecineTileService" on path: DexPathList[[zip file "/data/app/com.jakewharton.telecine.debug-2/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) at com.jakewharton.telecine.DaggerTelecineComponent.initialize(DaggerTelecineComponent.java:192)  at com.jakewharton.telecine.DaggerTelecineComponent.(DaggerTelecineComponent.java:97)  at com.jakewharton.telecine.DaggerTelecineComponent.(DaggerTelecineComponent.java:20)  at com.jakewharton.telecine.DaggerTelecineComponent$Builder.build(DaggerTelecineComponent.java:277)  at com.jakewharton.telecine.TelecineApplication.onCreate(TelecineApplication.java:22)  at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1015)  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4569)  at android.app.ActivityThread.access$1500(ActivityThread.java:154)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1371)  at android.os.Handler.dispatchMessage(Handler.java:102)  at android.os.Looper.loop(Looper.java:135)  at android.app.ActivityThread.main(ActivityThread.java:5276)  at java.lang.reflect.Method.invoke(Native Method)  at java.lang.reflect.Method.invoke(Method.java:372)  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:911)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:706)  Suppressed: java.lang.NoClassDefFoundError: com.jakewharton.telecine.TelecineTileService at dalvik.system.DexFile.defineClassNative(Native Method) at dalvik.system.DexFile.defineClass(DexFile.java:226) at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:219) at dalvik.system.DexPathList.findClass(DexPathList.java:321) at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:54) ... 18 more Suppressed: java.lang.ClassNotFoundException: com.jakewharton.telecine.TelecineTileService at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 17 more

JakeWharton commented 7 years ago

It looks like you built your own copy which means this is a problem with something on your end. That class should be included unless you've changed something or are using Instant Run which is prone to breaking things.

Here's an example I just built showing the class is present via APK analyzer:

screen shot 2017-09-12 at 10 16 47 am

You can check your APK in a similar way. If the class is present in the APK but not loading at runtime, then there's likely a problem with the device/emulator you are using.