构建时的Xcode脚本更新Settings.bundle中的版本号字符串

时间:2011-07-28 14:18:41

标签: xcode scripting build settings version

我们希望将当前版本的应用作为字符串放在Settings.app选项的底部,作为页脚。

我没有在Xcode中使用构建脚本,所以我需要一些帮助

  1. 如何获取当前版本,可能来自info.plist
  2. 如何替换静态字符串,例如Settings.bundle中Root.plist中的CURRENT_VERSION_NO
  3. 由于 马切伊。

1 个答案:

答案 0 :(得分:4)

您可以为目标添加运行脚本阶段(构建阶段>添加构建阶段>添加运行脚本)。然后你将有一个shell脚本,你可以使用PlistBuddy获取版本字符串并将其设置在你的其他plist中。

例如:

/usr/libexec/PlistBuddy -c "print:CFBundleVersion" "$CONFIGURATION_BUILD_DIR/$INFOPLIST_PATH"

将显示您应用的版本字符串。如果你在变量中记录它并使用Plist Buddy -c set在另一个plist上设置值,你就完成了。

这会产生类似的结果:

versionString=$(/usr/libexec/PlistBuddy -c "print:CFBundleVersion" "$CONFIGURATION_BUILD_DIR/$INFOPLIST_PATH")
/usr/libexec/PlistBuddy -c "Set CURRENT_VERSION_NO $versionString" "$THE_PATH_TO_YOUR_PLIST_FILE"

我从未使用PlistBuddy -c副本,但它应该允许您只在一行中执行此操作。