ClassNotFoundException-.BaseDexClassLoader.findClass

时间:2018-07-16 11:11:55

标签: android classnotfoundexception android-proguard multidex android-multidex

我在生产版本中面临 ClassNotFoundException

请在下面找到异常日志。

java.lang.RuntimeException:
at android.app.LoadedApk.makeApplication (LoadedApk.java:578)
at android.app.ActivityThread.handleBindApplication (ActivityThread.java:4680)
at android.app.ActivityThread.access$1600 (ActivityThread.java:150)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1405)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:148)
at android.app.ActivityThread.main (ActivityThread.java:5417)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616)

Caused by: java.lang.ClassNotFoundException:
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 android.app.Instrumentation.newApplication (Instrumentation.java:982)
at android.app.LoadedApk.makeApplication (LoadedApk.java:573)

我已经在项目中正确设置了progaurd和Multidex,这个问题出现在从4.2到6.0的多个android版本中。

任何人都可以帮忙!

先谢谢了。

1 个答案:

答案 0 :(得分:0)

defaultConfig {
...
minSdkVersion 14
targetSdkVersion // your version 
...

// Enabling multidex support.
multiDexEnabled true
}

dependencies {
  compile 'com.android.support:multidex:1.0.0'
}

将以上内容添加到您的build.gradle文件中。

@Override
protected void attachBaseContext(Context base) {
    MultiDex.install(base);
}

将以上内容添加到您的Application文件中,这将扩展MultiDexApplication。