1

我在 Xcode 构建设置中启用了 Info.plist 的预处理,以将 CFBundleVersion 中表示版本号的键替换为 version.h 中的相应值。这很好用:VERSION_NUMBER 被 1.0 替换为 version.h 中相应的#define VERSION_NUMBER 1.0。我想在 Root.plist 中做同样的事情,其中​​ plist 在放入 .app/.ipa 时会更新。

现在我有一个脚本可以在每次编译时自动更新 Root.plist,但这会更新实际的 Root.plist,这意味着我将不得不重新提交给版本控制等。我想在编译的应用程序中生成一个 Root.plist,但不要碰“真正的”plist。

任何帮助,将不胜感激。谢谢!

4

1 回答 1

1

据我所知,唯一的方法是像你一样使用构建时脚本。您可以通过以下技巧解决版本控制问题:

  • 将您的“模板” Root.plist(即具有预处理器指令的那个)重命名为 Root-template.plist
  • 从脚本调用预处理器并将其输出到 Root.plist
  • 将 Root-template.plist 提交到您的版本控制
  • 将 Root.plist 添加到版本控制的忽略列表中(例如,如果您使用 svn,则必须将 Root.plist 添加到包含该文件的目录的 svn:ignore 属性中)
于 2012-05-23T15:39:35.860 回答