93 votes

Différence entre la version de Xcode (CFBundleShortVersionString) et de construire (CFBundleVersion)

App Target Summary

Dans Xcode 4, je le vois pour ma cible résumé:

La "Version" d'entrée correspond à CFBundleShortVersionString dans l'info.fichier plist, et la "Construction" d'entrée correspond à CFBundleVersion.

Quelle est la différence entre ces deux? Je vois beaucoup de gens sur internet qui veulent mettre la même valeur pour les deux, et je soupçonne que vers l'arrière de compatibilité.

J'ai deux questions:

1) Si je devais commencer à partir de zéro, ce qui serait la meilleure pratique pour la gestion des versions de votre application?

2) Dans toutes les versions précédentes de mon application, j'ai utilisé seulement CFBundleVersion. Afin de ne pas gâcher le processus de mise à niveau, dois-je continuer à incrémenter CFBundleVersion de la même manière que j'ai été ou est-il possible de passer à la "bonne façon", en supposant que l'on existe?

67voto

JWWalker Points 11189

Le document Apple "Propriété des Informations de la Liste des Clés de Référence" dit qu' CFBundleShortVersionString représente une version, alors qu' CFBundleVersion représente tout construire, publié ou non. Aussi, CFBundleShortVersionString peut être localisé, mais je ne sais pas pourquoi vous voulez, car ils disent que c'est censé être "une chaîne de caractères composée de trois séparés par des nombres entiers". Pour une version validée, il serait raisonnable de faire les deux nombres de même. Pour une version de développement, vous pourriez tack quelque chose d'autre sur l' CFBundleVersion, peut-être un autre point et entier.

3voto

Arjun Points 29

Question de JWWalker sur pourquoi vous voulez localiser CFBundleShortVersionString, qui serait le séparateur décimal. Par exemple, dans des endroits où le séparateur décimal est en fait une virgule, la version « 1.5 » serait « 1,5 ».

1voto

Louie Points 4732

Quick Fix:

Il suffit d'ajouter le CFBundleShortVersionString le fichier plist et de modifier votre version.

  1. Révéler votre InfoPlist.strings
  2. Mettez-le en surbrillance et de coller le code ci-dessous (en supposant que son en mode code source)

{"CFBundleShortVersionString" = "1.1";}

  1. Changement de la 1.1 à ce que votre nouvelle version est.
  2. Construire et présenter avec plus aucune erreur!

enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X