dalvik.system.BaseDexClassLoader.findClass中的java.lang.ClassNotFoundException

dalvik.system.BaseDexClassLoader.findClass中的java.lang.ClassNotFoundException,java,android,Java,Android,将此添加到gradle.build: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.me.hexavoidaa/com.me.hexavoidaa.PTPlayer}: java.lang.ClassNotFoundException: Didn't find class "com.me.hexavoidaa.PTPlayer" on path: DexPathList[[zip file

将此添加到gradle.build:

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.me.hexavoidaa/com.me.hexavoidaa.PTPlayer}: java.lang.ClassNotFoundException: Didn't find class "com.me.hexavoidaa.PTPlayer" on path: DexPathList[[zip file "/data/app/com.me.hexavoidaa-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.me.hexavoidaa-1, /vendor/lib, /system/lib]]
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2208)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2340)
    at android.app.ActivityThread.access$800(ActivityThread.java:157)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1247)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:157)
    at android.app.ActivityThread.main(ActivityThread.java:5293)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
    at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.me.hexavoidaa.PTPlayer" on path: DexPathList[[zip file "/data/app/com.me.hexavoidaa-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.me.hexavoidaa-1, /vendor/lib, /system/lib]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
    at android.app.Instrumentation.newActivity(Instrumentation.java:1079)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2199)
    ... 11 more
  • 遵循android开发者页面的说明:

如果您已经在gradle和manifest中添加了多索引,然后尝试禁用instant run,然后创建要测试的apk,那么我面临同样的问题,搜索了很多次,尝试了所有解决方案,但最终解决了我的问题

在某些情况下,这可能是一个多索引问题。在你的应用程序类中试试这个。这在
App.java
中,它扩展了
Application

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

// Enabling multidex support.
multiDexEnabled true
}

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

来源:

在Android 9中,可能有助于将清单添加到“应用程序”标记中:



多索引实现可能有问题,请参阅是否已将活动添加到清单中?我建议您在此处寻找一些可能的解决方案:是否已在清单中添加PTPlayer类?此处存在相同的问题。不知道。。。伙计们解释为什么投票失败?我有一个非常小的应用程序,但仍然有这个问题:。你认为我应该启用多重索引吗?我注意到它(目前)只出现在Android 5.1及以下版本上,但文档说它不应该出现在Android 5.0及以上版本上…@androiddeveloper我对运行Android 5.1及以下版本的设备也有同样的问题。你解决问题了吗?同样的问题!使用5.0、5.1和5.1.1!仍然存在问题仅当您的应用程序类已经扩展了其他类并且无法从MultidexApplications进行扩展时才需要此选项。这对ClassNotFound有何帮助?
@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this); // this is the key code
}
<uses-library
        android:name="org.apache.http.legacy"
        android:required="false" />