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

Flutter升级cloud_firestore后热重载触发Stack Overflow未处理异常

修复方案

这个异常是cloud_firestore 2.5.1版本与Flutter热重载机制的兼容性问题,报错日志里的main函数无限递归调用是因为Firebase初始化逻辑在热重载时重复执行触发了栈溢出。可按以下步骤排查解决:

  • 调整Firebase初始化逻辑,将WidgetsFlutterBinding.ensureInitialized()作为main函数第一行执行,初始化代码必须放在runApp()之前且仅执行一次,参考写法:
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(const MyApp());
}
  • 检查当前Flutter SDK版本,需升级到2.5.0及以上稳定版,cloud_firestore 2.5.1的最低适配Flutter版本为2.5.0,低版本SDK会触发热重载兼容异常。
  • 若版本匹配仍报错,手动删除项目根目录下的.dart_tool文件夹,依次执行flutter pub get、flutter run冷启动项目,首次启动完成后再测试热重载即可。
  • 上述操作都无效的话,可临时将cloud_firestore降级到2.2.2版本,该版本无已知热重载兼容问题,可正常使用。

内容的提问来源于stack exchange,提问作者Abdul Rehman

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 21:45:03