【发布时间】:2017-12-06 10:23:45
【问题描述】:
我在 Google Play 开发者控制台中不断收到此错误报告。它看起来像 MultiDex 错误。
java.lang.RuntimeException:
at android.app.LoadedApk.makeApplication(LoadedApk.java:516)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4514)
at android.app.ActivityThread.access$1500(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1381)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:5299)
at java.lang.reflect.Method.invokeNative(Native Method:0)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
at dalvik.system.NativeStart.main(Native Method:0)
Caused by: java.lang.ClassNotFoundException:
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at android.app.Instrumentation.newApplication(Instrumentation.java:975)
at android.app.LoadedApk.makeApplication(LoadedApk.java:511)
我已经在 gradle.build 中添加了这个:
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 21
...
// Enabling multidex support.
multiDexEnabled true
}
dependencies {
compile 'com.android.support:multidex:1.0.0'
}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(newBase);
try {
MultiDex.install(this);
}catch (RuntimeException e){
e.printStackTrace();
}catch (Exception e){
e.printStackTrace();
}
}
我在 android 4.4、5.0、5.1、6.0 中仍然遇到此错误。请帮忙!!
【问题讨论】:
-
你注册
MutlidexApplication类到manifest了吗? -
您是否在应用程序部分设置了
android:name="android.support.multidex.MultiDexApplication" -
不,我在主要活动中添加了 attachBaseContext 方法
-
有没有人尝试使用调试器并在此处添加断点:
ClassLoader.java:457或此处BaseDexClassLoader.java:56以查看它尝试加载的类并调查它是否在类路径上? -
这里有同样的问题。这是罕见的,但它已经周期性地发生了一段时间。大多数崩溃来自 Android 4.4,一些来自 Android 5.0,极少数来自 Android 4.2、Android 5.1。
标签: java android classnotfoundexception android-multidex