XcodeでCFBundleVersionを自動インクリメントする

Identitiy

Version(CFBundleShortVersionString)をx.y.zの形式にします。

Build(CFBundleVersion)をx.y.z.aの形式にしてaを自動インクリメントする設定を説明します。

まず、バージョンとビルドは上の画像のように設定しておきます。

次に、プロジェクトを選択し「Build Phases」を「+」を押して「New Run Script Build Phase」を追加します。

次のシェルスクリプトを入力します。

versionNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" ${PROJECT_DIR}/${PROJECT_NAME}/${PROJECT_NAME}-Info.plist)
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" ${PROJECT_DIR}/${PROJECT_NAME}/${PROJECT_NAME}-Info.plist)
ifsback =$IFS
IFS='.'
set -- $buildNumber
buildNumberInc=$(($4 + 1))
newBuildNumber="${versionNumber}.${buildNumberInc}"
IFS=$ifsback
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $newBuildNumber" ${PROJECT_DIR}/${PROJECT_NAME}/${PROJECT_NAME}-Info.plist

以上。

あとはビルドする度に自動で番号が増えていきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です