la commande / usr / bin / codesign a échoué avec le code de sortie 1-erreur de signe de code
je suis en train de soumettre ma première application au magasin Apple. J'ai complété les processus suivants
- obtention d'un compte de développeur
- connecté au centre des membres pour créer un ID D'application
- accès au porte-clés utilisé pour demander et recevoir un certificat de distribution
- J'ai obtenu un profil d'approvisionnement en utilisant mon id et mon certificat
quand je construis l'application il fonctionne parfaitement dans le simulateur d'application et sur l'ipad, mais quand je passe mon application Archive
Sur le périphérique iOS, j'ai une erreur de code que j'ai attachée ci-dessous.
codesign /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
cd /Users/Gaby/Desktop/RoyalAppInspection
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin
/usr/bin/codesign --force --sign 79640A11C8D22589BD337496ABB8443581513846 --entitlements /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Intermediates/RoyalAppInspection.build/Debug-iphoneos/RoyalAppInspection.build/RoyalAppInspection.app.xcent /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
79640A11C8D22589BD337496ABB8443581513846: no identity found Command /usr/bin/codesign failed with exit code 1
Je n'ai aucune idée de ce que je dois faire pour corriger cela, car j'ai essayé de m'assurer que tous les autres aspects du processus ont été complétés correctement.
une préoccupation que j'ai eu était quand j'ai cliqué sur le fichier de profil d'approvisionnement qu'il ne serait pas ouvrir et "ajouter à la bibliothèque" ne serait pas pop up (Je ne peux pas accéder à l'utilitaire de configuration iphone pour une raison quelconque.) Je ajouté manuellement le .fichier mobileprovision à mon projet xcode mais je pense que cela peut aussi être la source de mon erreur.
tout le monde, pouvez-vous s'il vous plaît aider?
24 réponses
vous avez presque réussi tout seul, mais à la fin il semble y avoir quelque chose qui ne va pas avec votre profil.
tout d'abord, je recommande un outil pour "regarder à l'intérieur" du profil pour s'assurer qu'il est le bon: http://furbo.org/2013/11/02/a-quick-look-plug-in-for-provisioning/
cela ajoutera simplement plus d'informations sur le profil, en le sélectionnant dans Finder et en appuyant sur l'espace (coup d'oeil rapide).
Vérifiez votre Xcode Preferences:
- Xcode Perferences (CMD +,)
- Comptes
- Sélectionnez votre compte à gauche
- sélectionnez Afficher les détails en bas à droite
- Refresh (en utilisant le petit bouton en bas à gauche)
Xcode stocke les profils ~/Library/MobileDevice/Provisioning Profiles
si votre profil de distribution n'y est pas, double-cliquez sur il.
alors il devrait apparaître dans ce dossier, mais avec un nom en hachures, par exemple 1edf8f42-fd1c-48a9-8938-754cdf6f7f41.mobileprovision
à ce stade, l'examen Rapide plugin est très pratique :-)
Ensuite, vérifiez votre Paramètres Du Projet:
- sélectionnez la cible (pas le projet) que vous voulez construire dans Xcode
- interrupteur à construire des paramètres
- cherchez la section "Signature du Code"
- vérifier si les bonnes le profil est sélectionné sous "Profil de configuration" => "Libération"
Ensuite, vérifiez votre Paramètres Du Schéma:
- sélectionner le menu produit
- ouvrir schéma de sous-menu
- sélectionnez modifier le régime...
- sélectionnez "Archive" à gauche
- la configuration de construction doit être réglée sur "Libération"
Ensuite, vérifiez l' Accès Au Porte-ClésTrust
paramètres:
- ouvrez trousseau d'accès (lumière => trousseau)
- sélectionner la connexion
- cliquez sur les certificats
- rechercher
iPhone Distribution: Elena Carrasco (8HE2MJLM25)
sur la droite - clic droit, sélectionnez "Obtenir des informations"
- ouvrir la section "confiance"
- défini à " utiliser le système Les valeurs par défaut"
- répéter les étapes 5 à 7 pour
Apple Worldwide Developer Relations Certificate Authority
Ensuite, vérifiez l' Accès Au Porte-Clés clé privée Access Control
:
- répéter les étapes 1 à 4 de la vérification précédente
- développez le profil pour rendre votre clé privée visible
- clic droit sur la touche privée, sélectionnez "Get Info"
- passage de "Contrôle d'Accès"
- sélectionner "Confirmation avant d'autoriser l'accès"
- utiliser le bouton "+" pour ajouter "codesign" (normalement situé dans le
/usr/bin/codesign
)
Indice: s'il ne s'affiche pas dans le navigateur de fichiers, utilisezcmd + shift + g
pour entrer manuellement le chemin d'accès - si vous utilisez Carthage: ajouter
/usr/bin/productbuild
ici (merci à DesignatedNerd) - "Enregistrer Les Modifications"
l'Espère, ce n'truc pour vous!
mise à Jour (4/22/16):
je viens de trouver une très belle explication sur l'ensemble du processus de signe de code (il est vraiment intéressant de lire): https://www.objc.io/issues/17-security/inside-code-signing/
Les étapes suivantes résolu le problème pour moi. J'ai eu le problème où il ne compilait pas pour l'appareil ou l'archivage, fonctionne très bien pour le simulateur.
- ouvrir l'accès au porte-clés.
- verrouiller le porte-clés' login'.
- Déverrouiller.
Nettoyer et de construire après avoir fait les étapes ci-dessus et tout fonctionne bien maintenant.
Pour moi étapes suivantes travaillé:
- Quitter
Xcode
. - Ouvrir
Terminal
. - Commande Dactylographiée
xattr -rc /Users/manabkumarmal/Desktop/Projects/MyProjectHome
- Ouvrir Xcode.
- nettoyé.
- fonctionne maintenant et aucune erreur.
Cela a fonctionné pour moi. Essayez-le:
cd ~/Library/Developer/Xcode/DerivedData
xattr -rc .
j'ai eu cette erreur dans Xcode 8 et Mac OS Sierra. Essayé toutes les solutions ci-dessus et aucun n'a fonctionné. C'était la seule qui marchait pour moi. Ouvrez un terminal et tapez ceci:
cd ~/Library/Developer/Xcode/DerivedData
xattr -c *
pour moi, je viens de nettoyer l'application et elle a fonctionné (cmd + shift + k), supprimant l'erreur. J'ai eu l'erreur après la mise à jour de swift 2.3.
tout Faire d4Rk l'indique, c'est un grand rendez-vous à travers. s'il ne signe toujours pas, vous pourriez avoir des certificats expirés ou révoqués. Je trouve que ça peut arriver quand tu travailles en équipe.
- quittez xcode.
- ouvrir L'accès au porte-clés.
- dans la section' Certificats', passez en revue tous les certificats de "distribution iPhone" et s'ils sont expirés ou révoqués ou autrement invalides, supprimez-les.
- identique à 3, mais pour le "Mes Attestations".
- rouvrez xcode et réessayez.
Ouvrir le projet dans Xcode.
Sélectionnez project.app
le fichier et cliquez droit dessus, sélectionnez "afficher dans le finder".
Ouvrez le terminal et allez à la project.app
chemin d'accès au fichier.
tapez ce qui suit aux commandes une par une:
xattr -lr project.app
xattr -cr project.app
ouvrez le projet et courez.
le redémarrage a aussi fonctionné pour moi. Fait intéressant, il semble être un problème avec permettant Xcode accès aux certificats. Quand j'ai essayé l'archive à nouveau, j'ai reçu 2 popups me demandant si je voulais autoriser Xcode à accéder à mon porte-clés. Après cela, il a bien fonctionné.
il suffit de réinitialiser votre certificat de développement et de distribution et de nettoyer votre projet. Après que , Le redémarrage a aussi fonctionné pour moi. Fait intéressant, il semble être un problème avec permettant Xcode accès aux certificats. Quand j'ai essayé l'archive à nouveau, j'ai reçu 2 popups me demandant si je voulais autoriser Xcode à accéder à mon porte-clés. Après cela, il a bien fonctionné.
j'ai résolu ce problème, très facilement.
- il suffit de redémarrer l'ordinateur ( il rafraîchit tout seul ).
j'espère que cela aidera..
Supprimer les fichiers précompilés:
rm -rf /Users/raghu/Library/Developer/Xcode/DerivedData/Solitare-fdaukpanamlzllacxvdzfbeqcrsg/
Et essayez de le créer encore une fois.
redémarrer n'a pas fonctionné pour moi.
essayez simplement de télécharger et d'ajouter le certificat de nouveau au porte-clés. Ce qui a fonctionné pour moi. Quand j'ai vérifié L'accès au porte-clés, le certificat correspondant manquait. J'ai résolu le problème quand j'ai réinstallé le certificat.
supprimez votre certificat dans votre dev puis réinstallez - le et il fonctionnera!
j'ai résolu ce problème. Si votre projet a de .fichier xcdatamodeld (dire que vous êtes à l'aide de coreData), puis assurez-vous que les entités formé aller de son Modèle de Données de l'Inspecteur et de vérifier Classe a codegen, manuel/Aucun ou classdefination. s'il s'agit d'une déviation de classe, faites-le manuel/None et nettoyez le projet et relancez-le. les captures d'écran sont donnés ci-dessous:
si rien ne fonctionne dans la solution @d4Rk il suffit d'utiliser l'écran ci-dessous pour supprimer les profils de dispositions similaires non désirés/expirés. Clic droit sur la fourniture de profil pour le déplacer vers la corbeille. fenêtre de profil de provision
parce que dans mon cas, après avoir fait toutes les étapes, j'avais toujours le même problème et il s'est résolu lorsque j'ai supprimé les anciens profils de dispositions expirées avec le même nom et que j'ai ensuite utilisé le bon dans les paramètres de construction.
Dans Ma situation, certaines gousses étaient périmées après que j'ai mis à jour mon système D'exploitation. Voici ce qu'il a fixé:
en terminal:
cd /Users/quaisafzali/Desktop/AppFolder/Application/
pod install
Ensuite, ouvrez votre projet dans Xcode et nettoyez-le (Cmd+Shift+K), puis construisez/exécutez.
cela a fonctionné pour moi, j'espère que cela aidera certains d'entre vous!
j'ai eu la même erreur en janvier 2018 avec xcode 8.2.1
avant d'essayer d'ouvrir xcode Je ne pouvais pas car le système était en train de se mettre à jour. J'ai essayé plus tard et ça m'a permis de travailler dessus, et j'ai eu la même erreur.
j'ai suivi la plupart des solutions décrites dans cet article mais elles n'ont pas fonctionné pour moi.
puis je me suis souvenu du message sur la mise à jour du système et j'ai essayé de redémarrer la machine.
et ça a fait la magie. Il a travaillé pour moi.
Redémarrage a fonctionné pour moi aussi. Après la mise à niveau vers High Sierra j'ai eu des tonnes de problèmes avec le mot de passe et il semble que j'ai eu besoin d'entrer le mot de passe pour l'accès au porte-clés de XCode.
j'ai Suivi toutes les choses mentionnées dans ce fil, mais toujours face au même problème-
/usr/bin/codesign --force --sign A7F8FCD694D7923A3E57826398C3380E2E5A5446 --entitlements unknown error -1=ffffffffffffffff
Command /usr/bin/codesign failed with exit code 1
j'ai configuré signature automatique avec ma base de code qui fonctionnera avec Xcode run ainsi que xcodebuild exécuter à partir de la borne à partir de ma machine, mais il y a plus d'erreur lorsque je l'exécute sur jenkins pipeline ou lorsque j'essaie de l'exécuter sur terminal à partir d'une machine connectée à distance
Dans mon cas, une signature Automatique ne fonctionne pas si l'accès distant. parce que j'ai besoin d'ouvrir le porte-clés avant l'archive en utilisant
security unlock-keychain -p "newpassword" "/Users/xyz/Library/Keychains/login.keychain"
mots de passe de porte-clés et le mot de passe de connexion pour l'utilisateur macOS X était différent je le change en Nouveau même mot de passe et il fonctionne pour moi.
j'ai récemment eu ce problème et toutes les solutions ci-dessus ne fonctionne pas pour moi.
La raison pour laquelle il fonctionne sur votre simulateur mais pas de vrais appareils est probablement liée à votre Development Certificate
.
alors j'ai révoqué mon certificat sur Apple Developer Portal et en ai demandé un nouveau sur mon ordinateur. Voici les étapes:
- Goto Apple Developer Portal et révoquer votre ancien certificat de développement (ne fonctionne pas).
- ajouter le certificat de développement de L'application iOS
- suivre le pas à partir de Apple
- Télécharger le nouveau certificat généré et l'ajouter (double clic) à votre Trousseau
- assurez-vous qu'il est dans vos comptes XCode
alors ça marche!
j'Espère que ça aide!
la voie de La facilité (ce qui va faire tous les fichiers png), j'ai utilisé:
exécutez cette commande dans le Terminal
find . -name "*.png" -exec xattr -c {} \;