Seit langem benutze ich TestFlight zum koordinierten Verteilen meine aktuellen builds an Kunden / Tester. Da sich die Versionsnummer hierbei in der Regel nicht ändert, habe ich nach einer Möglichkeit gesucht die build number in Xcode / der Info.plist automatisch bei jedem erfolgreichen Kompiliervorgang um eins herauf zu setzen.
Um dies mit Xcode 4 zu erreichen habe ich folgenden Weg gefunden:
Zunächst selektiere man ein beliebiges Target und füge diesem im Build Phases Menü ein Run Script hinzu:
Nachdem hier das folgende Script eingetragen und die Shell auf #!bin/bash geändert wurde, wird die build number beim nächsten Kompilieren automatisch um eins erhöht.
buildPlist=${INFOPLIST_FILE} buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" $buildPlist) buildNumber=$(($buildNumber + 1)) /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" $buildPlist