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

Flutter多环境(Prod/Dev)下Xcode找不到GoogleService-Info.plist的配置咨询

解决Xcode找不到GoogleService-Info.plist的多环境配置方案

步骤1:创建目录结构并放置文件

在Flutter项目的ios目录下,手动搭建如下文件夹结构:

ios/
└── config/
    ├── dev/
    │   └── GoogleService-Info.plist  # 开发环境配置文件
    └── prod/
        └── GoogleService-Info.plist  # 生产环境配置文件

步骤2:将文件引入Xcode项目

  1. 打开ios目录下的Runner.xcworkspace
  2. 在Xcode左侧项目导航栏右键点击Runner,选择Add Files to "Runner"
  3. 选中ios/config/dev/GoogleService-Info.plist和ios/config/prod/GoogleService-Info.plist
  4. 取消勾选Copy items if needed(避免重复复制文件)
  5. 在Add to targets区域不勾选任何目标(防止两个文件同时打包引发冲突),点击Add

步骤3:添加动态复制脚本

通过脚本根据当前构建环境自动复制对应配置文件到Xcode期望路径:

  1. 在Xcode中选中Runner目标,切换到Build Phases标签页
  2. 点击左上角+按钮,选择New Run Script Phase
  3. 将新生成的Run Script阶段拖动到Compile Sources之前(确保文件先复制再编译)
  4. 展开Run Script,在脚本输入框粘贴以下内容:
# 根据当前构建环境复制对应的GoogleService-Info.plist
if [ "${CONFIGURATION}" = "Debug-dev" ] || [ "${CONFIGURATION}" = "Release-dev" ]; then
  cp "${PROJECT_DIR}/config/dev/GoogleService-Info.plist" "${PROJECT_DIR}/Runner/GoogleService-Info.plist"
elif [ "${CONFIGURATION}" = "Debug-prod" ] || [ "${CONFIGURATION}" = "Release-prod" ]; then
  cp "${PROJECT_DIR}/config/prod/GoogleService-Info.plist" "${PROJECT_DIR}/Runner/GoogleService-Info.plist"
fi

注意:如果你的环境配置命名不是Debug-dev/Release-dev,请替换为实际的Configuration名称(比如Debug Dev或DebugProd等)

步骤4:排除自动生成文件到.gitignore

ios/Runner/GoogleService-Info.plist是脚本动态生成的,无需提交到版本控制:
在项目根目录的.gitignore文件中添加一行:

ios/Runner/GoogleService-Info.plist

步骤5:验证配置

  1. 清理Xcode构建缓存:点击菜单栏Product > Clean Build Folder(快捷键Cmd+Shift+K)
  2. 分别选择dev和prod的Scheme运行项目,确认Xcode不再出现文件找不到的错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 19:40:05