LoginSignup
1

More than 5 years have passed since last update.

CFBundleVersionをReleaseビルドの時だけ更新

Posted at

タイトルの通り。
よくアーカイブする時にわすれるので。
会社でも調べたけど、家でもう一回調べたので忘れないように備忘録。

Run Scriptに追加

下の方だとビルド終わってから更新になって意味がないので、私はTarget Dependenciesの直後に追加してます
Edit SchemeのArchiveのPre-actionsでやろうとしたけど上手くできなかったのでBuild Phasesに追加してます

if [[ ${CONFIGURATION} == "Release" ]]; then
    buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PRODUCT_SETTINGS_PATH}")
    buildNumber=$(($buildNumber + 1))
    /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PRODUCT_SETTINGS_PATH}"
    echo "[UpdateBuildNumber Release] CFBundleVersion Increment ${buildNumber}"
else
    buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PRODUCT_SETTINGS_PATH}")
    echo "[UpdateBuildNumber Debug] CFBundleVersion Not Increment ${buildNumber}"
fi

echoはなくてもOK
ビルドログで確認できるように出力しているだけです

Debug

Debug.png

Release

Release.png

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1