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

迁移至SDK33与Gradle8后Firebase初始化失败问题求助

Firebase初始化失败问题排查(迁移至Android SDK 33 & Gradle 8后)

问题概述

将项目迁移至Android SDK 33和Gradle 8后,调用Firebase.initializeApp时出现如下错误:

PlatformException (PlatformException(channel-error, Unable to establish connection on channel., null, null))

核心代码片段:

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(
    options: DefaultFirebaseOptions.currentPlatform,
  );
}

解决方案尝试

以下是针对该问题的额外排查步骤,可逐一尝试:

1. 验证Firebase配置文件有效性

  • 确认android/app/google-services.json文件是通过FlutterFire CLI重新生成的,且与当前项目的包名(com.my.package)完全匹配。
  • 若文件存在,删除后重新执行flutterfire configure生成最新配置。

2. 检查命名空间与应用ID一致性

  • 确保app/build.gradle中的namespace和defaultConfig/applicationId完全一致,且与Firebase控制台中注册的应用包名一致:
android {
    namespace 'com.my.package'
    defaultConfig {
        applicationId 'com.my.package'
        // ...其他配置
    }
}

3. 临时禁用代码混淆

当前release构建开启了minifyEnabled true和shrinkResources true,可能导致Firebase核心类被误删。尝试临时关闭:

buildTypes {
    release {
        minifyEnabled false
        shrinkResources false
        // ...其他配置
    }
}

重新构建后测试是否仍报错,若恢复正常则需添加Firebase相关的ProGuard规则。

4. 确认依赖兼容性

  • 检查FlutterFire插件版本与Flutter 3.16.1的兼容性,可尝试将Firebase相关依赖升级至最新稳定版:
firebase_core: ^2.25.0
firebase_messaging: ^14.7.8
firebase_auth: ^4.16.0
  • 确保Firebase BOM版本与Gradle 8.1.2兼容,当前使用的32.6.0是适配Gradle 8的版本,若仍有问题可尝试升级至最新BOM版本。

5. 清理Gradle缓存并重建

执行以下命令彻底清理缓存后重新构建:

flutter clean
rm -rf android/.gradle
rm -rf ~/.gradle/caches
flutter pub get
flutter run

6. 检查Kotlin与Gradle版本兼容性

当前使用的Kotlin版本1.8.22与Gradle 8.1.2兼容,但可尝试升级至最新稳定版(如1.9.20)并同步项目:

buildscript {
    ext.kotlin_version = '1.9.20'
    // ...其他配置
}

7. 确认Multidex配置正确性

针对minSdk 21,确保Multidex已正确配置:

  • 确认android/app/build.gradle中已添加multiDexEnabled true
  • 确认依赖中包含implementation 'androidx.multidex:multidex:2.0.1'
  • 若自定义了Application类,需继承MultiDexApplication或在attachBaseContext中调用MultiDex.install(this)

8. 检查Android SDK组件

确保已安装Android SDK 33的所有必要组件(SDK Platform、Build Tools 33.0.2或更高版本),可通过Android Studio的SDK Manager验证。


内容的提问来源于stack exchange,提问作者Gombo Khorloo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 06:09:57