【发布时间】:2017-09-06 10:50:51
【问题描述】:
我已经实现了一个在 > Android 4.3 上运行的应用程序 .. 经过大量更改后,它突然停止工作 Android 5.0 .. 您可以在下面看到错误消息:
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.chickchat.chickchat/com.chickchat.chickchat.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.chickchat.chickchat.MainActivity" on path: DexPathList[[zip file "/data/app/com.chickchat.chickchat-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.chickchat.chickchat-1, /vendor/lib, /system/lib]]
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2137)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.chickchat.chickchat.MainActivity" on path: DexPathList[[zip file "/data/app/com.chickchat.chickchat-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.chickchat.chickchat-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2128)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
清单
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.chickchat.chickchat" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
<application
<activity
android:name=".MainActivity"
android {
compileSdkVersion 26
buildToolsVersion '25.0.3'
Gradle.文件
defaultConfig {
applicationId "com.chickchat.chickchat"
// Note: reducing to sdk 16 when removing UIAutomation
minSdkVersion 18
targetSdkVersion 26
versionCode 1
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
dependencies {
compile 'com.android.support:multidex:1.0.1'
}
虽然在 stackoverflow 上有很多关于此类异常的问题,但我可以找到解决问题的方法...
【问题讨论】:
-
clean-Rebuild-run 你的项目
-
你改过包名吗?
-
如果它在 Lollipop+ 上工作并在此之前抱怨缺少课程,您将需要 multidex。
-
正如@EugenPechanec 所说,您可能需要使用Multidex。你可以发布你的gradle吗?
-
您的应用程序类是从
MultiDexApplication扩展还是实现了必要的MultiDex.install(this)-> developer.android.com/studio/build/multidex.html#mdex-gradle
标签: android