XcodeでArchiveするたびにBuild番号を自動更新する方法
前々からやろうやろうと思っていたアーカイブ時のビルド番号の自動更新。
ようやく重い腰を上げてやってみました。
多分これが最もシンプルな方法です。
1. XcodeのBuild PhaseにRun Scriptを追加する。
2. 以下のコードをコピペする。内容はInfoPlistファイルからビルド番号を取得して+1して元のファイルに書き込んでいるだけ。
infoPlistFile="${SRCROOT}/${INFOPLIST_FILE}" buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${infoPlistFile}") buildNumber=$((${buildNumber%%.*} + 1)) /usr/libexec/PlistBuddy -c "Set:CFBundleVersion $buildNumber" "${infoPlistFile}"
3. Run script only when installingにチェックを入れる。ここにチェックを入れることでアーカイブ時にのみScriptが実行されるようになる。
4. Run Scriptを出来るだけ上の方にドラッグする。実行する順番を早くするため。
5. ターゲットが複数ある場合はそれぞれに同様にRun Scriptを追加する。
以上でアーカイブするたびにビルド番号が自動で1ずつ増加するようになります。
初めはもっとシンプルにagvtool next-version -allをRun Scriptで実行しようとしたのですが、それだとアーカイブが必ずキャンセルされてしまいました。
色々調べていたところ上記のやり方に至りましたが、その中で見つけた@es_kumagaiさんの記事が詳しくて参考になりました。ありがとうございます。
program.station.ez-net.jp