Flutter集成Firebase时iOS启动报错:找不到firebase.json文件
问题原因
这个错误的核心是Xcode执行Crashlytics符号上传脚本时,错误地去用户系统根目录(/Users/myusername/)找firebase.json,而非你的Flutter项目根目录。
具体来说,flutterfire configure生成的iOS符号上传脚本里,路径逻辑没正确定位到项目根目录的firebase.json,导致脚本运行时路径解析出错,触发了PathNotFoundException。
解决方法
- 打开iOS项目的Xcode工程(路径是
ios/Runner.xcworkspace) - 转到Build Phases面板,找到Upload Crashlytics Symbols这个脚本阶段
- 修改脚本里调用
flutterfire upload-symbols的部分,强制脚本在项目根目录执行:
原脚本大概是这样:
改成下面两种方式之一:"${PODS_ROOT}/FirebaseCrashlytics/upload-symbols" ...
方式一:先切换到项目根目录再执行命令
方式二:直接指定cd "$SRCROOT/.." && flutterfire upload-symbols --ios --build-phase --project=你的Firebase项目IDfirebase.json的正确路径flutterfire upload-symbols --ios --build-phase --firebase-json-path="$SRCROOT/../firebase.json" --project=你的Firebase项目ID - 保存修改后,重新构建iOS项目即可
额外提示
- 先确认
firebase.json确实在Flutter项目根目录(和pubspec.yaml同一层级) - 如果你的
flutterfire_cli版本比较老,可能存在路径解析bug,建议更新到最新版:dart pub global activate flutterfire_cli
内容的提问来源于stack exchange,提问作者Mike
相关产品推荐
相关产品推荐

