Мое приложение имеет несколько расширений, которые должны иметь одинаковую маркетинговую версию. До Xcode 11 мой сценарий копировал бы значения, подобные этому:
Маркетинговая версия: из фазы сборки расширения:
version=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "$SRCROOT/MyApp/Info.plist")
/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $version" "$INFOPLIST_FILE"
Версия сборки: из фазы сборки основного приложения:
if [ "${CONFIGURATION}" = "Release" ] || [ "${CONFIGURATION}" = "Beta Release" ]; then
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$SRCROOT/Extensions/ActionExtension/Info.plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$SRCROOT/Extensions/Siri Shortcuts/ViewTasksIntent/Info.plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$SRCROOT/Extensions/Siri Shortcuts/ViewTasksIntentUI/Info.plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$SRCROOT/Extensions/Siri Shortcuts/OP1TaskListIntent/Info.plist"
fi
Но теперь, когда версия системы находится в настройках сборки вместо plist, как я могу это сделать?