Flutter FYP项目构建release.apk失败及相关错误求助
解决方案
1. 修复open_filex插件的PluginRegistry.Registrar错误
open_filex 4.6.0依赖旧版Flutter嵌入API,与当前Flutter版本不兼容,直接升级插件:
- 在
pubspec.yaml中将open_filex版本改为^5.0.0(或最新稳定版) - 执行
flutter pub get
若升级后仍有问题,可替换为维护状态良好的同类型插件,比如open_file最新版。
2. 解决AndroidManifest.xml的Unresolved class '{applicationName}'问题
- 打开
android/app/src/main/AndroidManifest.xml,找到<application>标签的android:name属性 - 若值为
"{applicationName}",直接替换为实际Application类名(如io.flutter.embedding.android.FlutterApplication),或移除该属性让Flutter使用默认类
3. 修复embedding与AndroidX相关错误
检查Gradle配置
- 打开
android/build.gradle,确保Gradle插件版本与Flutter兼容:dependencies { classpath 'com.android.tools.build:gradle:7.4.2' // Flutter 3.10+建议用7.4+版本 classpath 'com.google.gms:google-services:4.3.15' // Firebase依赖版本 } - 打开
android/app/build.gradle,设置匹配的SDK版本:android { compileSdkVersion 33 defaultConfig { targetSdkVersion 33 minSdkVersion 21 // 根据项目需求调整 } } - 确认
gradle.properties中已启用AndroidX:android.useAndroidX=true android.enableJetifier=true
修正MainActivity.kt代码
- 打开
android/app/src/main/kotlin/[你的包名]/MainActivity.kt,改用新版嵌入方式:package com.your.package.name import io.flutter.embedding.android.FlutterActivity class MainActivity : FlutterActivity() { } - 删除旧的GeneratedPluginRegistrant相关代码,新版嵌入会自动注册插件
4. 彻底清理并重建项目
执行以下命令重置项目构建缓存:
flutter clean rm -rf android/.gradle android/build flutter pub get cd android && ./gradlew clean build cd .. && flutter build apk
5. 验证Firebase配置
确保google-services.json已放在android/app目录下,且android/build.gradle末尾已应用Google服务插件:
apply plugin: 'com.google.gms.google-services'
内容的提问来源于stack exchange,提问作者hugoleung
相关产品推荐
相关产品推荐

