Xcode ERROR ITMS-90783: "Nom d'affichage du bundle manquant"

98

Aujourd'hui, j'ai commencé à recevoir cette erreur avec fastlane et Xcode:

ERREUR ITMS-90783: "Nom d'affichage du bundle manquant. La clé Info.plist CFBundleDisplayName est manquante ou a une valeur vide dans le bundle avec l'identificateur de bundle 'com.id'."

C'était correct et je n'ai pas supprimé cette propriété. Je pense que c'est un bug du côté d'Apple.

Quelqu'un a-t-il le même problème et comment l'avez-vous résolu?

Nik Kov
la source
Bonjour @NikKov, je pense que vous pouvez changer manuellement la valeur $ {PROJECT.ROOT} de la cible info.plist en identifiant de votre bundle. Copiez simplement votre bundleId manuellement et collez-le.
emrcftci
Il semble que ce n'est plus nécessaire. J'ai oublié de l'ajouter pour l'une de mes mises à jour et la soumission a été examinée.
Oded le

Réponses:

153

entrez la description de l'image iciAjoutez simplement une nouvelle propriété à info.plist:

<key>CFBundleDisplayName</key>
<string>$(PRODUCT_NAME)</string>
Alexey Shikov
la source
1
Oui, cela fonctionne, et cela ne fonctionnera pas même si j'ai CFBundleDisplayName dans 'InfoPlist.strings', donc ce doit être la modification invisible d'Apple dans le serveur.
Roxasora
@Jameo pouvez-vous nous indiquer l'exigence? Est-ce d'Apple ou de Fastlane?
dev
@dev cela semble être une exigence Apple. Apple semble apporter quelques modifications à AppStoreConnect liées à iOS 13
Jameo
Est-ce documenté par Apple quelque part?
Kampai le
Je vois que $ (PRODUCT_NAME) et $ {PRODUCT_NAME} sont définis dans info.plist généré par Xcode. Lequel est valide ou sont-ils tous les deux valides?
Igotit le
12

Ouvrez "info.plist" à partir de votre dossier de projet.

Et ajoutez la clé: " Nom d'affichage du bundle " ouCFBundleName

et écrivez la valeur: "votre nom d'application" . ou ajoutez un nom de produit comme celui-ci$(PRODUCT_NAME)

Exemple de valeur clé

<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>

Alors votre problème sera résolu!

entrez la description de l'image ici

Michiko Oi Fukao
la source
10

Dans Xcode, vous pouvez ajouter "Display Name" en suivant l'illustration ci-dessous. entrez la description de l'image ici

Lai Lee
la source
9

J'ai aussi le problème. Bien qu'un nouveau projet ait ceci dans son info.plist:

<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>

Cela a éclaté ces derniers jours pour moi. Maintenant, je code CFBundleName au nom de l'application et cela semble fonctionner.

Tom Condon
la source
5

Allez simplement dans Info.plist et vérifiez s'il y a une entrée pour CFBundleDisplayName Si ce n'est pas là alors: Ouvrez le code source de votre Info.plist et ajoutez ceci

<key>CFBundleDisplayName</key>
<string>$(PRODUCT_NAME)</string>

Essayez maintenant l'archivage, vous réussirez cette fois. Il s'agit d'une nouvelle exigence introduite 5 à 7 jours en arrière.

À votre santé!!

Ankit Kumar Gupta
la source
Comment puis-je savoir que je suis à l'avance sur ce type de changements / exigences?
Awais Fayyaz
Nous ne pouvons pas avoir d'informations sur tous les changements mineurs. Cela se produit à mesure que nous progressons dans le processus.
Ankit Kumar Gupta
3

J'obtiens aussi cette erreur. Cela ne se passait pas il y a une semaine. J'ai essayé d'entrer un nom de bundle dans l'identifiant du bundle, mais cela n'a pas fonctionné. Il a fallu coller en fait $ (PROJECT.ROOT) dans l'élément Identifiant du bundle de info.plist, réarchiver puis télécharger sur l'App Store.

Si cela ne fonctionne pas, il existe une autre solution possible. Il semble qu'Apple demande peut-être que l'entrée plist "Nom du bundle" soit ajoutée avec une valeur de $ (PRODUCT_NAME). Si vous ne l'avez pas dans votre info.plist, vous devrez l'ajouter, puis réessayer.

Will Buffington
la source
3

J'étais en train de parcourir les réponses ici et quand j'ai vérifié mon fichier, il semblait être ce qu'il était censé être, je n'avais pas touché au fichier info.plist depuis des jours. Puis j'ai remarqué quelque chose, au lieu de ce $(PRODUCT_NAME)que j'avais ${PRODUCT_NAME). Bizarrement, il y avait une parenthèse bouclée. Étant donné que j'utilise 2 fichiers info.plist pour différentes cibles, j'ai décidé de vérifier si l'autre contient également le crochet bouclé et c'est le cas.

Castro Zwelithini
la source