Flutter接入Firebase后运行build.gradle报android()方法无匹配参数签名错误
Flutter接入Firebase后build.gradle执行报错解决方案
该报错通常是app级build.gradle的android代码块内存在语法错误、属性名拼写错误或者代码结构不完整,导致Gradle无法识别android配置块,可按以下步骤修复:
- 修复multiDex属性拼写错误
你配置中defaultConfig块内的multiDexEnable true属于拼写错误,正确属性名为multiDexEnabled,修改为:
multiDexEnabled true
- 补全代码块闭合符号
你贴出的配置代码中,defaultConfig块和android块都缺少闭合的}符号,如果实际代码中也存在遗漏,需要补充完整,修正后的android块结构示例:
android { compileSdkVersion 30 compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } sourceSets { main.java.srcDirs += 'src/main/kotlin' } defaultConfig { applicationId "com.example.crypto_wallet" minSdkVersion 21 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName multiDexEnabled true } } // 后续其他配置
- 检查配置兼容性
如果修改上述内容后仍报错,依次检查:- 确认项目根目录的
gradle.properties文件中已定义flutterVersionCode和flutterVersionName变量,若未定义可临时替换为固定数值测试,例如versionCode 1、versionName "1.0" - 确认根目录build.gradle中的Android Gradle插件版本,与gradle/wrapper/gradle-wrapper.properties中的Gradle版本匹配,避免版本不兼容导致的语法识别失败
- 确认app级build.gradle顶部的插件声明顺序正确,
com.google.gms.google-services插件需要放在所有插件声明的最后位置
- 确认项目根目录的
- 清理缓存重新构建
所有配置修改完成后,依次执行以下命令清理缓存后重新构建:
flutter clean flutter pub get
内容的提问来源于stack exchange,提问作者Muhammad Adnan
相关产品推荐
相关产品推荐

