Numéro de construction Xcode-Increment uniquement pendant ARCHIVE?

J’ai trouvé quelques autres articles qui montrent comment append un script pour incrémenter le numéro de build avec un script:

Meilleure façon d’incrémenter le numéro de build?

“Numéro de build” du projet Xcode

Est-ce que Xcode peut insérer le numéro de version dans le nom de fichier d’une bibliothèque lors de la construction?

Mais ce que je veux faire, c’est seulement augmenter le numéro de compilation lorsque j’utilise ARCHIVE (avant et après).

Exemple: Si le numéro de build actuel est 21, alors lorsque je choisis Product> Archive, le numéro de build sera augmenté à 22, il passera par son processus de création et de création du fichier Archive avec le numéro de build 22, puis terminé l’archivage, le numéro de build sera augmenté à 23.

Ajoutez le script suivant, comme dans l’exemple répertorié dans le premier lien que vous avez publié, mais faites-le deux fois. Une fois au début de la construction et une fois à la fin:

if [ $CONFIGURATION == Release ]; then echo "Bumping build number..." plist=${PROJECT_DIR}/${INFOPLIST_FILE} # increment the build number (ie 115 to 116) buildnum=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${plist}") if [[ "${buildnum}" == "" ]]; then echo "No build number in $plist" exit 2 fi buildnum=$(expr $buildnum + 1) /usr/libexec/Plistbuddy -c "Set CFBundleVersion $buildnum" "${plist}" echo "Bumped build number to $buildnum" else echo $CONFIGURATION " build - Not bumping build number." fi 

Merci beaucoup aux auteurs des questions que vous avez liées dans votre question pour les informations qui m’ont permis de commencer cette réponse!

Ceci est très similaire à la réponse de @ Inafziger, mais un ensemble de code plus concis, avec l’avantage supplémentaire que la vérification de “Release” se fait avec une case à cocher dans XCode plutôt qu’une variable d’exécution:

entrer la description de l'image ici

Suivez ces instructions deux fois, en en glissant une au début et une à la fin (une à exécuter avant la compilation et une à exécuter après la génération):

 # xcode-build-bump.sh # @desc Auto-increment the build number every time the project is run. # @usage # 1. Select: your Target in Xcode # 2. Select: Build Phases Tab # 3. Select: Add Build Phase -> Add Run Script # 4. Paste code below in to new "Run Script" section # 5. Drag the "Run Script" below "Link Binaries With Libraries" # 6. Ensure that your starting build number is set to a whole integer and not a float (eg 1, not 1.0) # 7. Check the checkbox "Run script only when installing" buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}") buildNumber=$(($buildNumber + 1)) /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PROJECT_DIR}/${INFOPLIST_FILE}" 

Voir https://gist.github.com/sekati/3172554

Xcode inclut l’outil de ligne de commande agvtool pour augmenter les numéros de version . Vous n’avez donc pas à tout faire manuellement avec PListBuddy .

xcrun agvtool next-version -all

augmente votre numéro de build.

xcrun agvtool new-marketing-version 2.0

définit un nouveau numéro de version visible par l’utilisateur.

Voir la documentation complète pour plus de détails .