Xcodeでビルド番号を自動インクリメント

ユーザーとテスターは、おそらく既に修正したバグを見つけるかもしれません。 ユーザーが古いバージョンのアプリケーションを使用することもあれば、修正が思ったほど良くないこともあります。 どちらの場合も、アプリケーションに表示される固有の小さなバージョン番号により、作業時間を節約できます。



できる


これを行うには、Googleで見つけることができる多数の方法があります。 しかし、残念ながら、それらのすべてがXcode 3.2およびXcode 4で機能するわけではありませんが、他の人はPerlやPythonで外部スクリプトを実行する場合でも、多くの「クランチ」を必要とします。 ほとんどの場合、 avgtoolの使用は冗長なようです。 これを行うにはもっと簡単な方法がなければならず、そのような方法があります。



必要なのは、Info.plistファイルにアセンブリ番号を保持することです。アセンブリ番号を読み取って、アプリケーションで表示できます。 また、プロジェクトの新しいビルドごとにこの数が自動的に増加するようにします。



Info.plistファイルにCWBuildNumberというキーを追加し、「0」などの開始値を設定します。 コンストラクトを使用して、アプリケーションでこの値を読み取ることができます。



NSString* buildNumber = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CWBuildNumber"];







Xcode 3.2およびXcode 4では、あらゆる目的のために実行時にスクリプトを実行できます。 残念ながら、Xcode 3.2とXcode 4は異なるパスでそれらを実行します。 環境変数PROJECT_DIRは状況を保存します! ビルド中にビルド番号を取得し、それを増やし、ターゲットのInfo.plistファイルを上書きする必要があります。 Run Scriptに次のコードを貼り付けるだけです。



buildNumber=$(/usr/libexec/PlistBuddy -c "Print CWBuildNumber" ${PROJECT_DIR}/TestIncrement/TestIncrement-Info.plist)

buildNumber=$(($buildNumber + 1))

/usr/libexec/PlistBuddy -c "Set :CWBuildNumber $buildNumber" ${PROJECT_DIR}/TestIncrement/TestIncrement-Info.plist







* 翻訳者注上記のコードのInfo.plistファイルへのパスを自分のパスに変更します。



おわりに


幸せなテスター、幸せな開発者。 最終製品にビルド番号を含むフルバージョンを表示すれば、ユーザーでさえ満足しているのかもしれません。



All Articles