web-dev-qa-db-fra.com

Erreur Itms-90339: Cet ensemble n'est pas valide. Le fichier info.plist contient une clé non valide 'CFBundleResourceSpecification ’dans l’application

J'essaie de télécharger mon application sur iTunes pour iOS 9. J'ai utilisé Xcode 7 beta 6 pour créer mon IPA, mais iTunes n'a pas pu télécharger mon IPA en suivant le message d'erreur suivant .  enter image description here

43
Anupam Mishra

Paramètres du projet sous Paramètres de construction> Signature de code> Chemin des règles de ressources de signature de code - Supprimez la valeur pour Chemin des règles de ressources de signature de code. Ce problème résolu pour moi

94
Kaushal Panjwani

Je suis le même bateau que DongHui Li. J'utilise aussi Jenkins. Si je supprime CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist, je ne parviens pas à créer. Et si je l’ajoute, je peux créer mais PAS pouvoir envoyer à Apple.

UPDATE-> Je peux maintenant créer et télécharger sur Apple avec Jenkins.
Ce que j'ai fait est: 

  1. Supprimer CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist
  2. Recherchez le script /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication et mettez-le à jour.
    Trouvez les lignes avec le code suivant dans le script

    my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements,resource-rules",
                      "--sign", $opt{sign},
                      "--resource-rules=$destApp/ResourceRules.plist");
    

    changez le en:

    my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements",
                      "--sign", $opt{sign});
    
57
Rishi Goel

Le problème réside dans le plug-in d'intégration Xcode pour Jenkins . Plus précisément, le volet des détails de la construction contient une case à cocher intitulée:

Cette fonctionnalité appellera 'Xcrun PackageApplication' avec les indicateurs facultatifs '--embed' et '--sign'.

pour la plupart, vous avez déjà exécuté codesign et, dans la plupart des cas, l'intégration du profil d'approvisionnement est redondante. malheureusement, l'auteur du plug-in n'a pas pris cela en considération et ces deux paramètres facultatifs ne sont pas configurables via l'interface graphique du plug-in jenkins. 

la solution:

NE SÉLECTIONNEZ PAS CETTE OPTION!

Cette option a trois paramètres: 

  • 'modèle de nom de fichier .ipa': ex: MyApplication

  • 'Répertoire de sortie': ex:OUTPUT

  • 'URL de plist de manifeste' (je ne l'ai pas utilisé ...)

au lieu de cela, empaquetez manuellement votre fichier .ipa en ajoutant le 'execute Shell' après la construction en utilisant les paramètres que vous auriez dans l'option 'pack' de l'interface graphique: 

/bin/mkdir $(PWD)/build/OUTPUT    
/usr/bin/xcrun -sdk iphoneos PackageApplication -v $(PWD)/build/MyApplication.app -o $(PWD)/build/OUTPUT/MyApplication.ipa
5
kent

Vérifiez dans votre info.plist si vous avez la voix CFBundleResourceSpecification vide et si vous n'en avez pas besoin, supprimez-la.

Si vous en avez besoin, vous devez vérifier la valeur que vous utilisez sous Code Signing Resource Rules Path dans build setting .

2
Massimo Polimeni

Comme j'utilise Jenkins pour construire automatiquement, supprimez CODE_SIGN_RESOURCE_RULES_PATH = $ (SDKROOT) /ResourceRules.plist mène à une construction en échec. Mais avec la construction de xcode, cela fonctionne.

0
Donghui Li

Les applications créées avec les outils de développement bêta ne peuvent pas être soumises à iTunes Connect.

Essayez-le avec la version GM ou la version finale des outils.

0
quellish