J'ai un cadre de projet défini par l'utilisateur (clé/valeur) comme ceci:Xcode build numéro de version dans le script shell
LATEST_BUILD_NUMBER 2.2.2.2
Dans mon Info.plist, j'ai mis la version bundle clé (CFBundleVersion)/valeur paire comme ce
Bundle version ${LATEST_BUILD_NUMBER}
Je crée un script shell pour faire le construit pour mon tous mes objectifs. Je veux aller chercher la valeur "2.2.2.2" dans mon script. Voilà ce que j'ai essayé:
INFO_PLIST_FULL_PATH="${PROJDIR}/${TARGET_NAME}-Info.plist"
echo plist path ${INFO_PLIST_FULL_PATH}
TARGET_BUILD_VERSION_NUMBER=$(/usr/libexec/PlistBuddy -c "Print ${BUILD_NUMBER}" $INFO_PLIST_FULL_PATH)
echo version_number ${TARGET_BUILD_VERSION_NUMBER}
Quand je fais cela, la sortie pour le chemin de plist est correct, mais la sortie TARGET_BUILD_VERSION_NUMBER est « $ {LATEST_BUILD_NUMBER} » au lieu de « 2.2.2.2 »
Comment puis-je obtenir la valeur au lieu du nom de la variable?
En fait, dans le script, je fais d'abord la commande xcodebuild, puis j'essaie de rechercher cette information. J'ai besoin de cette information pour créer un répertoire dans chaque numéro de construction pour enregistrer les fichiers .ipa. le processus est xcodebuild-> find version-> create directory-> packageApplication dans ce répertoire. Les fichiers ne devraient-ils pas être copiés d'ici là? – Bittu
Le fichier se trouvera dans le répertoire * .app/Contents /. La façon la plus simple de travailler avec ceci serait d'ajouter une phase de construction du script d'exécution, car vous aurez alors accès à un tas de variables de construction Xcode comme ['$ TARGET_BUILD_DIR'] (http://developer.apple.com/library/ mac/# documentation/DeveloperTools/Référence/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html # // apple_ref/doc/uid/TP40003931-CH3-SW88). –