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

Flutter macOS集成Firebase遇cloud_firestore/unavailable错误求助

解决Flutter macOS应用Firestore cloud_firestore/unavailable 错误

可能的原因及修复方案

1. macOS应用网络权限未配置

macOS 10.14+ 要求明确声明网络权限,Firestore需要网络访问但默认配置可能未添加相关权限:

  • 打开macos/Runner/Info.plist,添加以下键值对:
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
    <key>NSNetworkUsageDescription</key>
    <string>需要网络访问以连接Firebase服务</string>
    
    注:开发阶段用NSAllowsArbitraryLoads更快捷,生产环境可配置为仅允许Firebase域名的访问。

2. Firebase配置与本地签名不匹配

即便flutterfire configure生成了配置,也可能存在本地签名与Firebase控制台配置不一致的情况:

  • 检查macos/Runner/GoogleService-Info.plist里的BUNDLE_ID是否和Xcode中Runner的Bundle Identifier完全一致(包括大小写)
  • 打开Xcode,选中Runner target进入Signing & Capabilities,确认签名团队正确,且已启用App Sandbox并勾选Outgoing Connections (Client)权限

3. Firestore服务端状态或区域配置问题

  • 登录Firebase控制台,进入Firestore数据库页面,检查顶部是否有服务异常提示
  • 核对lib/firebase_options.dart中DefaultFirebaseOptions的databaseURL区域,是否和控制台中Firestore设置的区域一致,不一致则手动修改匹配

4. 本地缓存或依赖冲突

  • 执行flutter clean清除Flutter缓存,再运行flutter pub get重新拉取依赖
  • 删除macos/DerivedData文件夹,重启Xcode后重新构建项目

5. 防火墙或代理拦截请求

即使设备能正常联网,本地防火墙或代理工具也可能拦截Firestore的请求:

  • 临时关闭本地防火墙、VPN或代理工具后重新测试
  • 确认企业级防火墙未限制firestore.googleapis.com的访问

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 16:03:13