在 XCode 的一个目标中有两个 GoogleService-Info.plist

Posted

技术标签:

【中文标题】在 XCode 的一个目标中有两个 GoogleService-Info.plist【英文标题】:Have two GoogleService-Info.plist in one target in XCode 【发布时间】:2016-06-17 14:22:16 【问题描述】:

我在目标上设置了两个不同的环境(一个用于开发,另一个用于生产),因此我想使用两个不同的 GoogleService-Info.plist 但仍然没有成功。有办法吗?

【问题讨论】:

可能使用不同的目标? @Shubhank 我可以用两个目标做什么? 2 不能将同名文件添加到同一个目标。但如果您有多个目标 - 您可以将每个目标添加到单独的目标中。 @Shubhank 所以...而且只有一个目标? 请参阅***.com/questions/10497552/… 了解有关选项的更多讨论 【参考方案1】:

我使用以下解决方案:

为每个 XCode 配置创建一个 GoogleService-CONFIGURATION-Info.plist 文件。不要将文件链接到目标。

添加运行脚本构建阶段:

cp $SRCROOT/Resources/Firebase/GoogleService-$CONFIGURATION-Info.plist $CONFIGURATION_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/GoogleService-Info.plist

【讨论】:

Firebase 找不到文件 这就是解决方案!谢谢你。【参考方案2】:
    为两个 GoogleService-Info.plist 保持相同的名称 将一个 GoogleService-Info.plist 放入子文件夹中,例如“开发” 在 Xcode 中添加对这两个文件的引用,同时将它们链接到相应的目标 只需在您的 AppDelegate 中使用 FIRApp.configure(),完成

【讨论】:

以上是关于在 XCode 的一个目标中有两个 GoogleService-Info.plist的主要内容,如果未能解决你的问题,请参考以下文章

链接 NIB/Xib - 目标 C - xCode

在 Xcode 中有单独的测试目标方案吗?

为啥 XCode 说我的 iPhone 应用程序只能在 iPad 上运行?

在 Xcode7 - beta 5 和 storyboard 中展开 segue

如何在 xcode 4.5 中选择一个 .app 项目?

Xcode:在两个目标之间共享主故事板