TestFlightへアプリをアップロードするたびに「バージョン番号上げて」と言われるのに疲れたので、XcodeのRun Script機能を使って、アーカイブを作成するタイミングでInfo.plist内のビルド番号(Bundle Version)をオートインクリメントするようにした。
手順
- Xcoe上でターゲットを選択
- Build Phasesタブを選択
- New Run Script Phaseを選択
- Run Scriptを以下のように記述
- ソースはこちら
- 以下では Build Configuration が "Beta" の時のみ採番を行っていますが、自分の環境に合わせて "Release" でも "Stable" でも好きな値に変更してください
-
- Run Scirptを「Link Binary With Libraries」の下へドラッグ&ドロップで移動
Run Script
if [ ${CONFIGURATION} = "Beta" ]; then
build_number=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}")
build_number=$(($build_number + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $build_number" "${PROJECT_DIR}/${INFOPLIST_FILE}"
fi
参考