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

Flutter开启minifyEnabled的release模式下出现Firestore不可用错误

解决方案

问题根因

该报错不是Firebase服务真的不可用,是开启混淆后,Cloud Firestore依赖的protobuf序列化类、Flutter插件桥接类被误裁剪导致的调用失败,debug模式默认关闭混淆所以不会触发问题。

修复步骤

  • 第一步:修改proguard-rules.pro文件,在原有规则基础上追加以下配置:
# 保留Cloud Firestore核心服务类
-keep class com.google.cloud.firestore.** { *; }
-keep class com.google.firestore.v1.** { *; }

# 保留protobuf序列化类,避免数据解析异常
-keep class * extends com.google.protobuf.GeneratedMessageLite { *; }
-keepclassmembers class * extends com.google.protobuf.GeneratedMessageLite {
  <fields>;
  <methods>;
}

# 保留Flutter Firestore插件桥接类
-keep class io.flutter.plugins.firebase.firestore.** { *; }
  • 第二步:升级依赖版本避免兼容问题
    将android/build.gradle中com.google.gms:google-services版本从4.3.8升级到4.3.15,同时将pubspec.yaml中的cloud_firestore插件升级到3.5.1及以上的稳定空安全版本。
  • 第三步:重新构建release包
    保持minifyEnabled true、shrinkResources true配置不变,重新编译测试即可,该配置仅保留必要的未混淆类,整体包体积增量不到1%。

内容的提问来源于stack exchange,提问作者DAVID TEC

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 21:39:02