web-dev-qa-db-fra.com

Impossible d'exécuter l'application sur le simulateur après l'installation de Xcode 11 - erreur CFBundleVersion

Hier, j'ai téléchargé la version bêta de Xcode 11. Après cela, j'ai ouvert mon projet et essayé de courir avec le nouveau Xcode. Malheureusement, une erreur s'est produite avec le message:


Failed to install the requested application
Domain: NSPOSIXErrorDomain
Code: 22
Failure Reason: The application's CFBundleVersion is invalid.
Recovery Suggestion: Ensure your bundle contains a CFBundleVersion with a valid semantic version number.
--

J'ai fermé la version bêta et essayé de réexécuter avec la dernière version stable de Xcode (10.2.1), mais la même erreur s'est produite. Je dois mentionner qu'avant d'essayer d'exécuter un projet avec Xocde 11, cela a fonctionné sans aucun problème sur Xcode 10. Rien n'a été changé avant et après l'exécution avec beta Xcode.

Ce que j'ai déjà essayé:

  • J'ai supprimé Xcode 11 beta
  • J'ai nettoyé mon projet et l'ai retiré de la dernière branche
  • J'ai complètement supprimé Xcode 10 de:
~/Library/Caches/com.Apple.dt.Xcode
~/Library/Developer
~/Library/MobileDevice
~/Library/Preferences/com.Apple.dt.Xcode.plist
/Library/Preferences/com.Apple.dt.Xcode.plist
/System/Library/Receipts/com.Apple.pkg.XcodeExtensionSupport.bom
/System/Library/Receipts/com.Apple.pkg.XcodeExtensionSupport.plist
/System/Library/Receipts/com.Apple.pkg.XcodeSystemResources.bom
/System/Library/Receipts/com.Apple.pkg.XcodeSystemResources.plist
  • Et puis installé la nouvelle version stable 10.2.1

Je peux exécuter d'autres projets qui n'ont pas été testés avec Xcode 11 sans aucun problème.

Ma dernière idée est de réinstaller simplement macOS, mais je ne voudrais pas le faire.

Modifier: j'ai oublié de mentionner que l'application fonctionne sur l'iPhone XS physique.

47
Piotr Sękara

Dans mon cas, le champ Build Version était vide. J'y ai ajouté de la valeur mais cela n'a toujours pas fonctionné. J'ai essayé la commande killall -9 CoreSimulatorBridge Et cela n'a pas aidé non plus. Enfin, lorsque j'ai vérifié le xml de l'info.plist (Ouvrir en tant que -> Code source), la clé CFBundleVersion n'était pas présente et la version a été affichée dans l'info.plist via CFBundleShortVersionString.

Je viens d'ajouter la clé CFBundleVersion comme indiqué ci-dessous dans le info.plist et cela a fonctionné.

<key>CFBundleVersion</key> <string>$(MARKETING_VERSION)</string>

J'espère que ça aide quelqu'un d'autre aussi.

0
Sundeep

J'étais confronté à ce problème hier. La situation est que je tire mon code de git et que j'ai essayé de compiler, après cela, je ne pourrai peut-être pas exécuter mon application sur le simulateur (Ou archiver l'application à soumettre à l'App Store, le numéro de version n'a pas été mis dans les informations d'archive liste, aucune information de version comme 1.3.4 (123)). Le message d'erreur est CFbundleVersion n'est pas correctement configuré. Ma version Xcode est 11.4 (11E146).

j'ai donc essayé de suivre la méthode:

  1. Fixez la CFBundleVersion dans votre Info.plist. (Configurez le format de version correct, les numéros ou X.X.XX)

  2. changez l'identifiant du bundle, par exemple, ajoutez une adresse de préfixe com.example à com.example.test. Essayez ensuite de compiler et d'installer l'application sur le simulateur. À l'heure actuelle, vous pouvez voir que l'application peut s'installer normalement.

  3. Remplacez ensuite l'identifiant du bundle par votre identifiant d'origine, tel que com.example. Réessayez ensuite, vous verrez que vous pouvez installer l'application sur le simulateur ou l'archiver normalement.

0
Yin Gong

Salut, je viens de résoudre avec ceci: je n'avais dans mon info.plist que cette clé:

<key>CFBundleShortVersionString</key>
<string>2.1</string>

... et maintenant tout fonctionne en ajoutant ceci:

<key>CFBundleVersion</key>
<string>2.1</string>

avec le simulateur qui fonctionne à nouveau ....

REMARQUE: sans CFBundleVersion, mon application a parfaitement fonctionné sur un appareil physique !!!

0
Blasco73

Si vous obtenez ce qui suit erreur d'exécution .

(* voir les captures d'écran ci-dessous)

Voici comment vous pouvez résoudre ce problème.

Fait en quelques étapes.

Étape 1) Accédez à votre navigateur de projet dans Xcode.

Étape 2) Dans l'info.plist.

Étape 3) Ajoutez un * (Chaîne de versions de bundle, court) sous la (Version de bundle)

// Hint: Select the + sign to browse it if necessary .

Étape 4) Dans le champ Valeur (chaîne), ajoutez la version, mais avec une période décimale cette fois.

Donc, si (Bundle Version) est 4, assurez-vous d'y ajouter un point 4.0

Étape 5) Build Succeed.

   Happy Coding :-)
0
BugDoctor