it-swarm.com.de

befehl/usr/bin/codesign mit Exitcode 1-Codezeichenfehler fehlgeschlagen

Ich bin gerade dabei, meine erste App im Apple Store einzureichen. Ich habe die folgenden Schritte abgeschlossen

  1. Entwickelt ein Entwicklerkonto
  2. Beim Member Center angemeldet, um eine App-ID zu erstellen
  3. Verwendeter Schlüsselbundzugriff, um ein Verteilungszertifikat anzufordern und zu erhalten
  4. Ich habe ein Provisioning-Profil mit meiner ID und meinem Zertifikat erhalten

Wenn ich die App baue, läuft sie perfekt im App-Simulator und auf dem aktuellen iPad. Wenn ich jedoch meine App auf Archive auf iOS-Gerät umstelle, habe ich einen großen Code-Zeichenfehler, den ich unten angehängt habe.

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

Ich habe keine Ahnung, wie ich das beheben kann, da ich versucht habe sicherzustellen, dass alle anderen Aspekte des Prozesses korrekt abgeschlossen wurden.

Eine Sorge, die ich hatte, war, als ich auf die Bereitstellungsprofildatei klickte, die nicht geöffnet werden würde, und "Zur Bibliothek hinzufügen" nicht auftauchen würde (ich kann aus irgendeinem Grund nicht auf das Konfigurationsdienstprogramm für das iPhone zugreifen.) Ich habe die .mobileprovision-Datei manuell zu meinem Xcode hinzugefügt Projekt, aber ich denke, dass dies auch eine Fehlerquelle sein kann.

Kann jeder bitte helfen?

49
LeleMarieC

Sie hätten es fast alleine geschafft, aber am Ende scheint etwas mit Ihrem Profil nicht zu stimmen.

Zuerst würde ich ein Tool empfehlen, um das Profil "nach innen zu schauen", um sicherzustellen, dass es das richtige ist: http://furbo.org/2013/11/02/a-quick-look-plug-in-for-provisioning/

Dadurch werden lediglich einige weitere Informationen zum Profil hinzugefügt, wenn Sie es im Finder auswählen und die Leertaste (Schnellansicht) drücken.


Überprüfen Sie Ihre Xcode-Einstellungen:

  1. Xcode-Perferenzen (CMD +,)
  2. Konten
  3. Wählen Sie links Ihr Konto aus
  4. Wählen Sie unten rechts Ansichtsdetails aus
  5. Aktualisieren (mithilfe der kleinen Schaltfläche unten links)

Xcode Settings

Xcode speichert die Profile in ~/Library/MobileDevice/Provisioning Profiles

Wenn Ihr Vertriebsprofil nicht dort ist, doppelklicken Sie darauf.

Dann sollte es in diesem Ordner erscheinen, aber mit einem Hashnamen, z. B. 1edf8f42-fd1c-48a9-8938-754cdf6f7f41.mobileprovision an dieser Stelle ist das Quick Look-Plugin nützlich :-)


Überprüfen Sie als Nächstes Ihre Projekteinstellungen:

  1. wählen Sie das Ziel (nicht das Projekt) aus, das Sie in Xcode erstellen möchten
  2. wechseln Sie zu den Build-Einstellungen
  3. suchen Sie nach dem Abschnitt "Code Signing"
  4. prüfen Sie, ob unter "Bereitstellungsprofil" das richtige Profil ausgewählt ist => "Freigeben".

Build Settings


Überprüfen Sie als Nächstes Ihre Schema-Einstellungen:

  1. wählen Sie Produktmenü
  2. offenes Schema-Untermenü
  3. bearbeitungsschema auswählen ...
  4. wählen Sie links "Archiv"
  5. Build-Konfiguration sollte auf "Release" gesetzt sein

Scheme Settings


Überprüfen Sie als Nächstes die Einstellungen für Keychain AccessTrust:

  1. zugang zum Schlüsselbund öffnen (spotlight => Schlüsselbund)
  2. login auswählen
  3. klicken Sie auf Zertifikate
  4. suchen Sie nach iPhone Distribution: Elena Carrasco (8HE2MJLM25) auf der rechten Seite
  5. klicken Sie mit der rechten Maustaste und wählen Sie "Get Info".
  6. Öffnen Sie den "Vertrauensbereich"
  7. auf "Systemeinstellungen" setzen
  8. wiederholen Sie die Schritte 5 bis 7 für Apple Worldwide Developer Relations Certificate Authority.

Keychain


Überprüfen Sie als Nächstes den privaten Schlüssel Keychain AccessAccess Control:

  1. wiederholen Sie die Schritte 1 bis 4 aus der vorherigen Überprüfung
  2. erweitern Sie das Profil, um Ihren privaten Schlüssel sichtbar zu machen
  3. klicken Sie mit der rechten Maustaste auf den privaten Schlüssel und wählen Sie "Get Info".
  4. zu "Zugriffskontrolle" wechseln
  5. wählen Sie "Bestätigen, bevor Sie den Zugriff zulassen"
  6. verwenden Sie die Schaltfläche "+", um "Codesign" hinzuzufügen (normalerweise in /usr/bin/codesign). 
    Hinweis: Wenn es nicht im Dateibrowser angezeigt wird, verwenden Sie cmd + shift + g, um den Pfad manuell einzugeben.
  7. wenn Sie Carthage verwenden, fügen Sie hier ebenfalls /usr/bin/productbuild hinzu (danke an DesignatedNerd )
  8. "Änderungen speichern"

 Keychain 2

Hoffen Sie, dass einer davon für Sie einen Trick bringt!


Update (22.04.16):

Ich habe gerade eine sehr nette Erklärung über den gesamten Code-Sign-Prozess gefunden (es ist wirklich lesenswert): https://www.objc.io/issues/17-security/inside-code-signing/

88
d4Rk

Die folgenden Schritte haben das Problem für mich gelöst. Ich hatte das Problem, dass es nicht für das Gerät kompilierte oder archivierte, und es funktionierte gut für den Simulator.

  1. Schlüsselbund öffnen.
  2. Sperren Sie den Login-Schlüsselbund.
  3. Entsperre es.

Reinigen und bauen Sie nach den obigen Schritten und alles funktioniert jetzt einwandfrei.

89
SAPLogix

Für mich haben folgende Schritte funktioniert:

  1. Beenden Sie Xcode.
  2. Öffnen Sie Terminal.
  3. Typisierter Befehl xattr -rc /Users/manabkumarmal/Desktop/Projects/MyProjectHome
  4. Öffnen Sie Xcode.
  5. Gereinigt.
  6. Nun funktionierte und kein Fehler.
33
Manab Kumar Mal

Das hat bei mir funktioniert. Versuche es:

cd ~/Library/Developer/Xcode/DerivedData
xattr -rc .
17
Shree

Ich hatte diesen Fehler in Xcode 8 und Mac OS Sierra. Versuchte alle oben genannten Lösungen und keine funktionierte. Dies war der einzige, der für mich gearbeitet hat. Öffnen Sie das Terminal und geben Sie Folgendes ein:

cd ~/Library/Developer/Xcode/DerivedData
xattr -c *
10
Jose Ramirez

Für mich habe ich die App einfach gesäubert und sie funktioniert (cmd + shift + k). Ich habe den Fehler nach einem Update auf Swift 2.3 erhalten.

3
luke

Für mich wurde "Restarting Mac System" bearbeitet

2
Sakthimuthiah

Tun Sie alles, was D4Rk vorschlägt, das ist ein great walk-through . Wenn es immer noch nicht signiert, haben Sie möglicherweise einige abgelaufene oder widerrufene Zertifikate. Ich finde, dass dies passieren kann, wenn Sie in einem Team arbeiten.

  1. xcode beenden.
  2. Öffnen Sie den Schlüsselbund.
  3. durchlaufen Sie im Abschnitt "Zertifikate" alle "iPhone Distribution" -Zertifikate. Wenn sie abgelaufen oder widerrufen oder auf andere Weise ungültig sind, löschen Sie sie.
  4. wie 3, jedoch für den Abschnitt "Meine Zertifikate".
  5. Öffnen Sie Xcode erneut und versuchen Sie es erneut.
2
orion elenzil

Öffnen Sie das Projekt im Xcode.
Wählen Sie project.app-Datei aus, klicken Sie mit der rechten Maustaste darauf und wählen Sie die Option "Im Finder anzeigen".
Öffnen Sie das Terminal und gehen Sie zum Dateipfad project.app.

Geben Sie nacheinander die folgenden Befehle ein:

xattr -lr project.app
xattr -cr project.app

Öffnen Sie das Projekt und führen Sie es aus.

2
Mujahed Ansari

Ich habe alle in diesem Thread erwähnten Dinge verfolgt, aber immer noch vor demselben Problem. 

/usr/bin/codesign --force --sign A7F8FCD694D7923A3E57826398C3380E2E5A5446 --entitlements  unknown error -1=ffffffffffffffff
Command /usr/bin/codesign failed with exit code 1

Ich habe Automatic signing mit meiner Codebasis konfiguriert, die mit xcode run sowie xcodebuild vom Terminal von meinem Rechner aus funktioniert, aber es gibt einen Fehler, wenn ich es auf der jenkins-Pipeline oder Versuchen Sie, auf einem Terminal von einem entfernten Rechner aus zu laufen 

In meinem Fall funktioniert das automatische Signieren nicht, wenn der Zugriff remote erfolgt. weil ich keychain vor dem archivieren mit öffnen muss 

security unlock-keychain -p "newpassword" "/Users/xyz/Library/Keychains/login.keychain"

passwörter für den Schlüsselbund und das Anmeldekennwort für den macOS X-Benutzer waren anders. Ich ändere es in ein neues, dasselbe Passwort, und es funktioniert für mich.

2
Piyush

Entfernen Sie die vorhandenen vorkompilierten Dateien:

rm -rf  /Users/raghu/Library/Developer/Xcode/DerivedData/Solitare-fdaukpanamlzllacxvdzfbeqcrsg/

Und versuche es erneut zu bauen.

1
Raghu MR

Ich habe dieses Problem sehr leicht gelöst.

  • Starten Sie einfach den Computer neu (es wird alles von selbst aktualisiert). 

Ich hoffe das hilft..

1
LazyX

Setzen Sie einfach Ihr Entwicklungs- und Vertriebszertifikat zurück und bereinigen Sie Ihr Projekt Danach arbeitete Reboot auch für mich. Interessanterweise scheint es ein Problem zu sein, dass Xcode auf die Zertifikate zugreifen kann. Als ich das Archiv erneut ausprobierte, erhielt ich 2 Popup-Fenster, in denen ich gefragt wurde, ob ich Xcode den Zugriff auf meinen Schlüsselbund erlauben möchte. Danach hat es gut funktioniert.

1
Ruchin Somal

Reboot hat auch für mich gearbeitet. Interessanterweise scheint es ein Problem zu sein, dass Xcode auf die Zertifikate zugreifen kann. Als ich das Archiv erneut ausprobierte, erhielt ich 2 Popup-Fenster, in denen ich gefragt wurde, ob ich Xcode den Zugriff auf meinen Schlüsselbund erlauben möchte. Danach hat es gut funktioniert. 

1
Mike

Neustart hat für mich nicht funktioniert. 

Versuchen Sie einfach, das Zertifikat herunterzuladen und erneut zu keyChain hinzuzufügen. Das hat bei mir funktioniert. Bei der Überprüfung von Keychain Access fehlte das entsprechende Zertifikat. Das Problem wurde behoben, als ich das Zertifikat erneut installierte.

0
geet Sebastian

Ich hatte den gleichen Fehler im Januar 2018 mit xcode 8.2.1

Bevor ich versuche, xcode zu öffnen, konnte ich es nicht, da das System gerade aktualisiert wurde. Ich habe es irgendwann später probiert und es hat mich daran arbeiten lassen, und dann bekam ich den gleichen Fehler.

Ich habe die meisten in diesem Artikel beschriebenen Lösungen befolgt, sie funktionierten jedoch nicht für mich. 

Dann erinnerte ich mich an die Nachricht über die Systemaktualisierung und versuchte, die Maschine neu zu starten. 

Und das war der Zauber. Es hat für mich funktioniert.

0
Iker Etxebarria

Neustart hat auch für mich funktioniert. Nach dem Upgrade auf High Sierra habe ich eine Menge Probleme mit dem Passwort und es sieht so aus, als müsste ich das Passwort für den Schlüsselbund für XCode eingeben.

0
Pierre Tanguay

Wenn in der @ d4Rk-Lösung nichts funktioniert, verwenden Sie einfach den folgenden Bildschirm, um unerwünschte/abgelaufene, ähnliche Bereitstellungsprofile zu löschen. Klicken Sie mit der rechten Maustaste auf das Bereitstellungsprofil, um es in den Papierkorb zu verschieben. Bereitstellungsprofilfenster

In meinem Fall bekam ich nach dem Ausführen aller Schritte immer noch das gleiche Problem und es wurde behoben, als ich alte abgelaufene Bereitstellungsprofile mit demselben Namen löschte und dann das richtige in der Build-Einstellung verwendete.

0
Adnan Haider

Ich habe dieses Problem gelöst. Wenn Ihr Projekt über eine .xcdatamodeld-Datei verfügt (bedeutet, dass Sie coreData verwenden), stellen Sie sicher, dass die Entitäten, die Sie gebildet haben, in den Datenmodellinspektor wechseln und prüfen, ob Klasse Codegen, Manuell/Kein oder Klassendefinition hat. Wenn es sich um eine Klassendefinition handelt, machen Sie es manuell/Keine, reinigen Sie das Projekt und führen Sie es erneut aus. Screenshots sind unten angegeben:

 enter image description here

 enter image description here

0
MRizwan33

löschen Sie Ihr Zertifikat in Ihrem Dev und installieren Sie es erneut.

0
ozzbmt

In meiner Situation waren einige Pods nach der Aktualisierung meines Betriebssystems nicht mehr aktuell. Folgendes wurde behoben:

Im Terminal:

cd /Users/quaisafzali/Desktop/AppFolder/Application/
pod install

Öffnen Sie dann Ihr Projekt in Xcode und reinigen Sie es (Befehlstaste + Umschalttaste + K). Erstellen Sie anschließend "Ausführen".

Das hat für mich funktioniert, hoffe es hilft einigen von euch!

0
Q A

Ich hatte kürzlich dieses Problem und alle oben genannten Lösungen funktionierten nicht für mich.

Der Grund, warum es auf Ihrem Simulator funktioniert, aber nicht auf realen Geräten, hängt wahrscheinlich mit Ihrem Development Certificate zusammen.

Also habe ich mein Zertifikat im Apple Developer Portal widerrufen und ein neues auf meinem Computer angefordert. Hier sind die Schritte:

  1. Gehen Sie zu Apple Developer Portal und widerrufen Sie Ihr altes (nicht funktionierendes) Entwicklungszertifikat. revoke
  2. IOS App-Entwicklungszertifikat hinzufügen add
  3. Folgen Sie dem Schritt von Apple
  4. Laden Sie das neu erstellte Zertifikat herunter und fügen Sie es (Doppelklick) zu Ihrem Schlüsselbund hinzu. download
  5. Stellen Sie sicher, dass es sich in Ihren XCode-Konten befindet. accounts

Dann geht es!

Ich hoffe es hilft!

0
nigong