Flutter应用启动报错:无法实例化MainActivity类
Flutter应用启动报错:MainActivity类找不到
我是Flutter技术新手,正在跟随YouTube教程开发Flutter应用,此前运行正常但现在启动时出现报错。我使用的Flutter和Android版本比教程版本新,已经针对版本差异做了适配调整。以下是错误日志及相关Gradle配置文件:
错误日志
√ Built build\app\outputs\flutter-apk\app-debug.apk. E/AndroidRuntime(30001): FATAL EXCEPTION: main E/AndroidRuntime(30001): Process: com.themessagedoor.brew_crew, PID: 30001 E/AndroidRuntime(30001): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.themessagedoor.brew_crew/com.themessagedoor.brew_crew.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.themessagedoor.brew_crew.MainActivity" on path: DexPathList[[zip file "/data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/base.apk"],nativeLibraryDirectories=[/data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/lib/x86_64, /data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]] E/AndroidRuntime(30001): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3551) E/AndroidRuntime(30001): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3782) E/AndroidRuntime(30001): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101) E/AndroidRuntime(30001): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) E/AndroidRuntime(30001): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) E/AndroidRuntime(30001): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307) E/AndroidRuntime(30001): at android.os.Handler.dispatchMessage(Handler.java:106) E/AndroidRuntime(30001): at android.os.Looper.loopOnce(Looper.java:201) E/AndroidRuntime(30001): at android.os.Looper.loop(Looper.java:288) E/AndroidRuntime(30001): at android.app.ActivityThread.main(ActivityThread.java:7872) E/AndroidRuntime(30001): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime(30001): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) E/AndroidRuntime(30001): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936) E/AndroidRuntime(30001): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.themessagedoor.brew_crew.MainActivity" on path: DexPathList[[zip file "/data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/base.apk"],nativeLibraryDirectories=[/data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/lib/x86_64, /data/app/~~6HmKQ3PSpoVntRyC1E8eqw==/com.themessagedoor.brew_crew-KWS2PSLfkJPMtBcF_bjCKg==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]] E/AndroidRuntime(30001): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259) E/AndroidRuntime(30001): at java.lang.ClassLoader.loadClass(ClassLoader.java:379) E/AndroidRuntime(30001): at java.lang.ClassLoader.loadClass(ClassLoader.java:312) E/AndroidRuntime(30001): at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:95) E/AndroidRuntime(30001): at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45) E/AndroidRuntime(30001): at android.app.Instrumentation.newActivity(Instrumentation.java:1339) E/AndroidRuntime(30001): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3538) E/AndroidRuntime(30001): ... 12 more Application finished.
Android级别build.gradle
buildscript { ext.kotlin_version = '1.7.10' repositories { google() mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" //check this if it's correct classpath "com.google.gms:google-services:4.4.0" } } // plugins { // id("com.google.gms.google-services") version "4.0.1" apply false // } allprojects { repositories { google() mavenCentral() } } rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') } tasks.register("clean", Delete) { delete rootProject.buildDir }
应用级别build.gradle
plugins { id "com.android.application" id "kotlin-android" id "dev.flutter.flutter-gradle-plugin" id("com.google.gms.google-services") } def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { localPropertiesFile.withReader('UTF-8') { reader - localProperties.load(reader) } } def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' } def flutterVersionName = localProperties.getProperty('flutter.versionName') if (flutterVersionName == null) { flutterVersionName = '1.0' } android { namespace "com.themessagedoor.brew_crew" compileSdkVersion flutter.compileSdkVersion ndkVersion flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } sourceSets { main.java.srcDirs += 'src/main/kotlin' } defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.themessagedoor.brew_crew" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. minSdkVersion flutter.minSdkVersion targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName multiDexEnabled true } buildTypes { release { // TODO: Add your own signing config for the release build. // Signing with the debug keys for now, so `flutter run --release` works. signingConfig signingConfigs.debug } } } flutter { source '../..' } dependencies { implementation(platform("com.google.firebase:firebase-bom:32.7.0")) }
我已经检查过代码和Gradle文件,仅存在为适配新版本Android及Flutter/Dart语言所做的差异。
内容的提问来源于stack exchange,提问作者hamtickell
相关产品推荐
相关产品推荐

