【问题标题】:Keep Xcode targets up to date使 Xcode 目标保持最新
【发布时间】:2013-04-17 16:18:22
【问题描述】:

我有一个带有两个目标的 Xcode 项目,一个用于我的发布版本,一个用于 beta 测试。两个目标之间唯一的有意差异是 Bundle name 和 Id,因此 beta 测试人员可以同时安装 release 和 beta 版本而不会发生冲突和混淆(我也在考虑使用不同的图标) .

我无法让这两个目标保持最新状态;例如,当我将一个新库添加到一个目标时,我有时会忘记单击复选框以将其添加到另一个目标。

有没有一种简单的方法可以自动(或多或少地)使两个目标在源代码和库内容等设置方面保持同步?也许有一种工具可以对设置进行基本的比较(它们似乎在一个主文件中,所以传统的文件比较工具无济于事)。或者有没有更好的方法来维护我上面描述的测试版的设置?

(我使用 Xcode 4.5.2 进行越狱 iOS 开发——所以我不需要担心任何 App Store 问题。)

【问题讨论】:

  • 取决于您添加库的方式。更多细节?
  • 通常使用拖放,但添加库只是一个示例。我最近还更改了一个目标中的标题和框架搜索路径。将其轻松(即非手动)添加到另一个目标会很高兴。
  • 现在我明白了。你真的使用单独的目标。如果唯一的区别是 Bundle 名称和 ID,那么您应该使用一个目标并向该目标添加另一个方案。然后,您可以在方案级别设置这些属性。
  • 谢谢,我不知道这些设置可以在方案级别设置。我将不得不查找并尝试一下。如果它有效(并且没有其他问题出现),我会接受这个作为答案。
  • 提示:在目标摘要中将您的 Bundle Identifier 设置为 $(BUNDLE_IDENTIFIER),并根据方案添加名为 BUNDLE_IDENTIFIER 的用户定义构建设置。

标签: ios xcode project diff target


【解决方案1】:

就我而言,我最终只是删除了测试版的目标并为发布版制作了目标的副本(我懒得从问题 cmets 中寻求@ilmiac 的有用建议)。由于重要的设置(Bundle name 和 Id)都存储在 Info.plist 文件中,所以我只需要在复制后更改 Info.plist 文件的位置即可。为了将更改保持在最低限度,我会将应用程序命名为“AppName copy”(Xcode 为重复目标提供的默认名称)而不是“AppName” beta'(捆绑目录名称也是如此)。

【讨论】:

    猜你喜欢
    • 2010-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-05
    • 2018-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多