3

我有一个用户定义的项目设置(KEY/VALUE),如下所示:

LATEST_BUILD_NUMBER       2.2.2.2

在我的 Info.plist 中,我已经像这样设置了捆绑版本 (CFBundleVersion) 键/值对

Bundle version     ${LATEST_BUILD_NUMBER}

我正在创建一个 shell 脚本来为我的所有目标进行构建。我想在我的脚本中获取值“2.2.2.2”。这是我尝试过的:

INFO_PLIST_FULL_PATH="${PROJDIR}/${TARGET_NAME}-Info.plist"
echo plist path ${INFO_PLIST_FULL_PATH}

TARGET_BUILD_VERSION_NUMBER=$(/usr/libexec/PlistBuddy -c "Print ${BUILD_NUMBER}" $INFO_PLIST_FULL_PATH)
echo version_number ${TARGET_BUILD_VERSION_NUMBER}

当我这样做时,plist 路径的输出是正确的,但 TARGET_BUILD_VERSION_NUMBER 输出是“${LATEST_BUILD_NUMBER}”而不是“2.2.2.2”

如何获取值而不是变量名?

4

1 回答 1

0

Xcode 在将文件复制到构建产品中之前不会替换该值。因此,转到源代码:从 *.xcodeproj/project.pbxproj 文件中获取值。您应该能够通过快速搜索找到其中的当前值。然后你只需要设计一个正则表达式来去掉它。

于 2011-10-21T02:56:55.383 回答