在Xcode中为300多个方案添加新的运行脚本操作

时间:2018-10-04 15:52:49

标签: ios xcode

我有一个Xcode项目,该项目具有300多个方案/目标,并且我有一个自定义脚本,需要在应用开始构建之前运行该脚本。我已经找到了解决方法,方法是编辑所需的方案,选择Build-> Pre-actions-> New Run Script Action-> Provide Build Settings From,然后粘贴此脚本(这会在通知中动态更改版本信息和包ID扩展程序的plist文件):

buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/$INFOPLIST_FILE")
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${SRCROOT}/NotificationService/Info.plist"

buildVersion=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "${PROJECT_DIR}/$INFOPLIST_FILE")
/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $buildVersion" "${SRCROOT}/NotificationService/Info.plist"

buildID=${PRODUCT_BUNDLE_IDENTIFIER}
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier $buildID.NotificationService" "${SRCROOT}/NotificationService/Info.plist"

问题是我必须为300多个方案执行此操作,这是一项乏味且及时的工作。有什么方法可以将其应用于我的所有方案/目标吗?

1 个答案:

答案 0 :(得分:0)

最终通过创建一个快速通道脚本解决了问题,该脚本基本上将此预运行运行脚本添加到XML中适当位置的每个xcscheme文件中。