J'essaie de soumettre une application iOS à l'AppStore et je rencontre l'erreur suivante:
ERREUR ITMS-9000: "Signature manquante ou non valide. Le bundle 'com.google.GPPSignIn3PResources' sur le chemin du bundle 'Payload/My_app_name.app/GooglePlus.bundle' n'est pas signé à l'aide d'une soumission Apple certificat."
J'ai soumis cette application avant de n'avoir jamais rencontré ce problème. Quelqu'un sait-il s'il y a eu un changement récent?
Mise à jour: Je pourrais soumettre l'application environ 6 heures avant d'avoir cette erreur. Ensuite, mon application a été rejetée avec ce message:
Cet ensemble n'est pas valide - Les nouvelles applications et mises à jour d'applications soumises à l'App Store doivent être construites avec des versions publiques (GM) de Xcode 5.1.1 ou supérieur et SDK iOS 7. Ne soumettez pas d'applications créées avec un logiciel bêta.
Après cela, je ne pouvais plus soumettre.
Update2:
Google a fait une annonce à ce sujet:
http://googledevelopers.blogspot.com.br/2014/09/an-important-announcement-for-ios.html
Une nouvelle version a été publiée, résolvant le problème.
Google a publié la version 1.7.1 du google plus sdk.
J'ai créé un nouveau podspec pour la version 1.7.1 car le propriétaire précédent n'est pas joignable.
Ajoutez simplement à votre Podfile:
pod 'googleplus-ios-sdk', '~> 1.7.1'
Supprimez simplement les fichiers ci-dessous et créez votre application comme d'habitude!
GooglePlus.bundle/GPPSignIn3PResources
GooglePlus.bundle/GPPCommonSharedResources.bundle/GPPCommonSharedResources
GooglePlus.bundle/GPPShareboxSharedResources.bundle/GPPShareboxSharedResources
Ajout du --deep
drapeau à Other Code Signing Flags
(OTHER_CODE_SIGN_FLAGS) dans les paramètres du projet (non cible) semble résoudre ce problème.
Le correctif correct consiste à mettre à niveau vers la version 1.7.1 du SDK Google Plus iOS. Il semble avoir été spécifiquement publié pour résoudre ce problème.
Si vous différez les bundles 1.7.0 et 1.7.1, vous verrez qu'aucun fichier n'a été ajouté, mais trois fichiers ont été supprimés: GPPSignIn3PResources, GPPShareboxSharedResources et GPPCommonSharedResources - les trois fichiers dont l'App Store se plaignait.
Si --deep ne fonctionne pas, il y a de fortes chances que le bundle soit simplement des ressources et ne possède en fait aucun fichier exécutable. Supprimez son Info.plist et vous serez bon. S'il y a une raison pour laquelle vous avez réellement besoin d'Info.plist, supprimez au moins la clé CFBundleExecutable.
ma solution pour Google Plus ressemblait à ça
et rencontrez un nouveau problème (exigence arm64), sans rapport avec celui-ci :)
Je pense que cela devrait fonctionner si vous n'avez pas besoin des fichiers de ressources comme le bouton de connexion.
Ajouter --deep
flag ne m'a pas aidé, j'ai donc résolu le problème de manière simple et élégante (sarcasme détecté). J'ai supprimé le SDK Google+ de Podfile, puis téléchargé le SDK d'ici et l'ai installé à l'ancienne.
J'ai eu la même erreur lorsque j'ai essayé de soumettre l'application avec xcode 6.1. Rien n'a fonctionné et j'ai vraiment tout essayé. J'ai ensuite trouvé une solution sur Apple forums développeurs. Cela a fonctionné pour moi:
Ce problème semble avoir été résolu aujourd'hui par Apple, après avoir été interrompu pendant environ 24 heures.
Envoi de la même application aujourd'hui, sans modification du .bundle
, ne lance plus l'erreur.
--deep
la signature du code du bundle n'est pas requise.
(Notez que je n'ai pas testé cela avec le bundle Google spécifique auquel la question fait référence. Le bundle de ressources que notre application utilise, cependant, fonctionne désormais correctement et ne renvoie plus l'erreur.)
Google vient de publier une version mise à jour 1.7.1, qui peut être téléchargée à partir de leur site Web https://developers.google.com/+/mobile/ios/getting-started . Actuellement, il n'est toujours pas mentionné dans leurs notes de version.
Si vous utilisez des cocoapods, vous pouvez copier la podspec 1.7.0 actuelle, en créer une locale et changer toutes les références de version dans leur 1.7.1 jusqu'à ce que la nouvelle soit fusionnée dans le référentiel officiel des cocoapods.
En supprimant tous les fichiers Info.plist du fichier google plus.bundle, travaillez pour moi.
Vous devez également supprimer les fichiers info.plist
GooglePlus.bundle/info.plist
GooglePlus.bundle/GPPCommonSharedResources.bundle/info.plist
GooglePlus.bundle/GPPShareboxSharedResources.bundle/info.plist