1

我正在尝试使用脚本为版本设置自动版本号。

我的第一个构建阶段(在目标依赖项之后)是使用此脚本的运行脚本:

if [ "${CONFIGURATION}" = "Release" ]; then
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion `date +%Y%m%d%H%M`" ProtoMemory/ProtoMemory-Info.plist
fi

或者用简单的英语:如果这是一个发布版本,请将构建版本设置为发布日期和时间。

该脚本完全符合我的要求,但它似乎是在将Info.plist文件复制到捆绑包之后执行的。这意味着我最终在源代码中获得了正确的内部版本号,但在我的捆绑包中却没有。

现在,我正在使用一个愚蠢的解决方法,在我制作存档之前我构建它一次(实际上构建它两次)。在复制文件之前有没有办法调用构建脚本Info.plist?还是 Xcode 使用了某种缓存版本的 plist?或者也许我可以添加一个最终构建阶段,将Info.plist文件再次复制到包中......

有什么想法吗?

4

1 回答 1

1

也许你可以使用agvtool

agvtool new-version -all `date +%Y%m%d%H%M`

于 2014-01-23T16:23:09.393 回答