You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移至Flutter 2后firebase_core插件导致Release包构建失败如何解决

解决方案

问题根因

你遇到的报错本质是升级到Gradle 7.x后,默认不会将项目本地的Android SDK路径配置同步到第三方Flutter插件的构建环境中,导致firebase_core插件构建release版本时无法读取SDK位置。Debug模式可正常运行是因为debug构建时会默认使用本地调试环境的SDK配置。

分步操作

  • 第一步:先验证Flutter环境配置是否正常
    执行命令flutter doctor -v,检查输出中Android SDK路径识别是否正常。如果识别异常,先在环境变量中配置ANDROID_SDK_ROOT,mac系统可在~/.zshrc或~/.bash_profile中添加如下配置:
    export ANDROID_SDK_ROOT=你的Android SDK本地路径(默认一般是~/Library/Android/sdk)
    
    配置完成后执行source ~/.zshrc(对应你使用的shell配置文件)生效。
  • 第二步:选择适配方案
    方案1:降级Gradle到Flutter 2.x官方推荐兼容版本(优先选,适配成本最低)
    1. 打开项目根目录android/build.gradle文件,将AGP版本修改为4.1.0:
    classpath 'com.android.tools.build:gradle:4.1.0'
    
    1. 打开项目根目录android/gradle/wrapper/gradle-wrapper.properties文件,修改Gradle版本:
    distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
    
    方案2:不降级Gradle,手动传递SDK配置到子项目
    打开项目根目录android/build.gradle文件,在文件末尾添加如下配置:
    subprojects {
        afterEvaluate { project ->
            // 统一子项目编译版本,和主项目保持一致
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion 29
                    buildToolsVersion "30.0.3"
                }
            }
            // 传递主项目的SDK路径配置到子项目
            if (rootProject.file('local.properties').exists()) {
                def properties = new Properties()
                properties.load(rootProject.file('local.properties').newDataInputStream())
                project.ext.set('android.sdkDirectory', properties.getProperty('sdk.dir'))
            }
        }
    }
    
  • 第三步:清理缓存重新构建
    依次执行以下命令:
    flutter clean
    flutter pub get
    flutter build apk --release
    

额外注意事项

不要单独引入Firebase相关的原生Android依赖,你当前dependencies中配置的implementation 'com.google.firebase:firebase-messaging:20.1.0'建议删除,统一使用pub.dev上的firebase_messaging插件,且版本要和firebase_core:1.5.0对齐,避免出现版本兼容冲突。

内容的提问来源于stack exchange,提问作者Ashraf Zarkani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:09:00