【问题标题】:Post script target build phase in Xcode how to embed a build version?在 Xcode 中发布脚本目标构建阶段如何嵌入构建版本?
【发布时间】:2010-02-24 02:41:27
【问题描述】:
在 Xcode 中,我添加了一个脚本目标构建阶段,因此我可以在项目成功构建后运行任意脚本。我卡住的地方是,我试图以任何方式将我们的构建版本传递到脚本中。看起来唯一的方法是解析 Settings.app/Root.plist 并检索硬编码的构建版本我已经嵌入其中。有没有其他方法可以以一种有意义的方式解决这个问题?我对使用任何脚本环境持开放态度,尤其是 Python,因为如果我最终必须进行 XML 解析,那么就可以直接在那里进行。
【问题讨论】:
标签:
xcode
xcodebuild
iphone
【解决方案2】:
我已经通过将构建操作移到一系列操作中的第一个来解决它。随意阅读它here。
我刚刚添加了添加到“1.0”的“额外”数字的时间。认为您应该能够轻松插入 svn 命令。
plist 还必须来回转换二进制。
然后你应该能够在运行时从应用程序本身获取这个版本字符串
NSBundle *bundle = [NSBundle mainBundle];
NSDictionary *info = [bundle infoDictionary];
NSString *prodName = [info objectForKey:@"CFBundleVersion"];