Xcode 11までは、現在のアプリ バージョン (AppStore 用) を読み取るスクリプトを使用し、Swift を使用できないため、LaunchScreen を変更するのに役立ちました。
sourceFilePath="$PROJECT_DIR/$PROJECT_NAME/App/Base.lproj/LaunchScreen.storyboard"
versionNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "$INFOPLIST_FILE")
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
sed -i .bak -e "/userLabel=\"APP_VERSION_LABEL\"/s/text=\"[^\"]*\"/text=\"v$versionNumber\"/" "$PROJECT_DIR/$PROJECT_NAME/App/Base.lproj/LaunchScreen.storyboard"
しかし、Xcode 11では、プロジェクトのビルド設定内にVersioningと呼ばれる新しいセクションがあります。
に自動的CFBundleShortVersionString
に変更され$(MARKETING_VERSION)
ます。Xcodeはそれを自動的に処理します。手動で静的な数値に変更してXcodeに任せたくありません。
問題は、この new にアクセスし、 run scriptMARKETING_VERSION
を使用して launchScreen ラベルに設定するにはどうすればよいかということです。