当前位置: 首页 > 知识库问答 >
问题:

我在Android中面临ClassNotFoundException

蔡宏大
2023-03-14

我正在尝试创建一个使用Firebase的聊天应用程序。但突然间,我面临着这个错误。

02-13 10:23:02.533446   733   733 E AndroidRuntime: FATAL EXCEPTION: main
02-13 10:23:02.533446   733   733 E AndroidRuntime: Process: com.mycompany.myapp3, PID: 733
02-13 10:23:02.533446   733   733 E AndroidRuntime: java.lang.RuntimeException: Unable to instantiate application com.mycompany.myapp3.MyApplication: java.lang.ClassNotFoundException: Didn't find class "com.mycompany.myapp3.MyApplication" on path: DexPathList[[zip file "/data/app/com.mycompany.myapp3-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mycompany.myapp3-1/lib/arm, /system/lib, /vendor/lib, /system/vendor/lib]]
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.LoadedApk.makeApplication(LoadedApk.java:807)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5477)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.ActivityThread.-wrap2(ActivityThread.java)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1595)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:110)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.os.Looper.loop(Looper.java:203)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:6251)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)
02-13 10:23:02.533446   733   733 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.mycompany.myapp3.MyApplication" on path: DexPathList[[zip file "/data/app/com.mycompany.myapp3-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mycompany.myapp3-1/lib/arm, /system/lib, /vendor/lib, /system/vendor/lib]]
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.Instrumentation.newApplication(Instrumentation.java:992)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     at android.app.LoadedApk.makeApplication(LoadedApk.java:801)
02-13 10:23:02.533446   733   733 E AndroidRuntime:     ... 9 more

build.gradle:

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.mycompany.myapp3"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    buildTypes {
        debugg {
            debuggable true
        }
    }
}

dependencies {
    implementation 'com.google.android.gms:play-services-analytics:15+'
    implementation 'com.google.firebase:firebase-storage:15+'
    implementation 'de.hdodenhof:circleimageview:3.1.0'
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:recyclerview-v7:27.1.1'
    implementation 'com.google.firebase:firebase-auth:15+'
    implementation 'com.google.firebase:firebase-database:15+'
}

AndroidManifest。xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mycompany.myapp3" >
    
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        
    <application
        
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme" >
        <activity android:name=".StartActivity" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".RegisterActivity" />
        <activity
            android:name=".ResetPasswordActivity" />
        <activity
            android:name=".LoginActivity" />
        <activity
            android:name=".MainActivity" />
        <activity
            android:name="ChatActivity" />
        <activity
            android:name=".UserProfileActivity" />
        <!--<activity
            android:name=".ImageActivity" />-->
        <activity
            android:name=".DebugActivity"
            android:screenOrientation="portrait"/>
        <meta-data
            android:name="android.max_aspect"
            android:value="4.0"/>
        
        <uses-library android:name="org.apache.http.legacy" android:required="false" />
    </application>

</manifest>

我不知道该怎么修。如果你能帮忙,我就当学徒。

注意:拜托,我是这个领域的初学者。我真的需要帮助。如果我错过了分享任何信息,请告诉我,我会添加信息。

谢谢

共有2个答案

欧阳俊晖
2023-03-14

对于android Studio 4,您需要在build.gradle(应用程序)中启用Java8:

android {
    defaultConfig {
            ...
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}
禄豪
2023-03-14

看起来您尚未在AndroidManifest文件中注册应用程序类。

像这样注册

<application
android:name=".MyApplication">
 类似资料:
  • 我正在尝试将Microsoft MIP sdk集成到Android应用程序中,SDK有一些头文件和.so bin文件以及sdk提供了aria-android-java-sdk.aar文件,该文件正在使用findClass API的.so文件之一。我尝试添加 .so 和头文件,并将 aar 文件添加到构建脚本中,但我看到以下错误. 有没有办法使用 cmake 在Android Studio中添加 .

  • 嗨,我刚开始学习如何在android Studio上编码。 失败:生成失败,出现异常。 错误:无法解析配置':app:_internal_aapt2_binary'的所有文件。找不到com.android.tools.build:AAPT2:3.2.0-4818971。在以下位置搜索:文件:/users/xxx/library/android/sdk/extras/m2repository/com

  • 这是web.xml文件 这就是我面临的错误: 严重:第21行第2列出现解析致命错误:根元素后面的文档中的标记必须格式正确。org.xml.sax.SAXParseException;systemId:jndi:/localhost/JAXRS HelloWorld/WEB-INF/WEB.xml;行号:21;列数:2;文档中根元素后面的标记必须格式正确。com.sun.org.apache.xer

  • agpbi:{“kind”:“error”,“text”:“找不到与给定名称匹配的资源(at\u0027textapplace\u0027 with value\u0027@style/textapparance.appcompate.notification\u0027)”,“sources”:[{“file”:“C:\users\android-2\.android\Build\cache\9

  • 我正在尝试安装android studio。在完成安装过程后,当我打开它时。它没有打开。搜索很多关于它的信息,但要找出问题所在。 我面临问题的窗口截图 当我单击finish按钮时,应用程序没有打开。JDK已正确安装在我的笔记本电脑中。我的笔记本电脑的进程是奔腾四核

  • 我正在开发一个支持NFC的应用程序。今天,我的清单中有一个意向过滤器,用于处理具有NDEF记录的NFC“颠簸”: 这个很好用。 该应用程序有一个“选择项目”活动和一个“查看”活动。正如目前所写,意图是在我的“选择一个项目”活动的上下文中处理的。但是,当应用程序处于“查看”活动中时,我希望“查看”能够处理任何NFC意图,而不是“选择项目”活动。当“查看”活动不再在堆栈上时,我希望任何NFC“颠簸”再