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

Flutter中向Firebase Firestore添加数据后print语句不执行

Firebase添加数据后print语句不执行的排查方案

你的代码里print('Success')没执行,核心原因是FirebaseFirestore.instance.collection('users').add(...)这个异步操作抛出了异常,代码流程被中断,没走到print步骤。

第一步:捕获异常排查问题

先给异步操作加上try-catch,打印具体错误信息,才能定位根源:

return Scaffold(
  floatingActionButton: FloatingActionButton(
    onPressed: () async {
      try {
        await FirebaseFirestore.instance.collection('users').add({'Name':'David'});
        print('Success');
      } catch (e) {
        print('添加数据失败:$e'); // 输出具体错误,方便排查
      }
    },
    child: const Icon(Icons.add),
  ),
  body: const Center(child: Text('My App')),
);

常见失败原因及解决

  • 安全规则限制:Firestore默认规则禁止未认证用户写入数据,测试阶段可以临时放宽规则(上线前务必改回严格规则):
rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}
  • 项目配置错误:检查Android端的google-services.json和iOS端的GoogleService-Info.plist是否正确导入到项目对应目录,且配置信息与Firebase后台一致。
  • 网络问题:确保模拟器/物理设备处于联网状态,Firestore操作需要网络支持。
  • 权限缺失:Android项目需在AndroidManifest.xml中添加网络权限:
<uses-permission android:name="android.permission.INTERNET"/>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 12:24:51