it-swarm.com.de

Xcode 8 zeigt den Fehler, dass das Bereitstellungsprofil kein Signaturzertifikat enthält

Xcode 8 zeigt den Fehler, dass das Bereitstellungsprofil kein Signaturzertifikat enthält.

Dieses Problem tritt bei Xcode-8 nur bei Xcode 7 auf, wobei dasselbe Bereitstellungsprofil das zugehörige identifizierte Zertifikat anzeigt.

163
Satish Mavani

Um dies zu beheben,

Ich aktiviere einfach die "Automatische Verwaltung von Signaturen" auf der Registerkarte "Projekteinstellungen". Bevor ich das aktivieren konnte, hatte ich Angst, dass es einige Nebenwirkungen haben könnte, aber sobald ich es aktiviert habe, funktioniert es für mich.

Hoffe das hilft anderen!  enter image description here

81
Satish Mavani

Überprüfen Sie Ihren Schlüsselbund auf Identitäten, denen ein privater Schlüssel fehlt. Ich hatte mehrere Verteilungszertifikate für dasselbe Team installiert, von denen eines den privaten Schlüssel fehlte. Xcode überprüfte nur die erste übereinstimmende Identität im Schlüsselbund und verwendete diese automatisch, im Gegensatz zu der, die den privaten Schlüssel enthielt.

 enter image description here

Durch das Entfernen der übereinstimmenden Identität ohne privaten Schlüssel hat Xcode die korrekte Identität erneut erkannt.

150
Nick

Es gibt viele Möglichkeiten, dies zu beheben, z. B. das automatische Signieren aktivieren usw. Wenn Sie jedoch den Grund für diesen Fehler verstehen möchten, müssen Sie die Fehlermeldung betrachten.

Das Provisioning-Profil, das Sie auf der Registerkarte "Allgemein" ausgewählt haben, enthält nicht das Signaturzertifikat, das Sie unter "Build-Einstellungen" -> "Codesignaturidentität" ausgewählt haben.

Dies geschieht normalerweise, wenn ein Verteilungszertifikat für die Debug-Identität unter "Build-Einstellungen" -> "Codesignatur-Identität" ausgewählt wurde.

Wenn dies unter "Signieren (Debuggen)" geschieht, kann es auch sein, dass "Signing Identity" -> "iOS Development" nicht im Bereitstellungsprofil enthalten ist.

132
Eystein Bye

Für diejenigen, die aus irgendeinem Grund nicht auotamatic verwenden sollten

Öffnen Sie keyChain Access, um zu sehen, ob es zwei gleiche Zertifizierungen gibt.

42
d0ye

Dieses Problem trat auf, nachdem ich kürzlich Xcode auf Version 9.3 aktualisiert hatte. Das Problem bestand darin, dass das Zertifikatsignaturzertifikat (unter Debugging) auf ein Distributionszertifikat statt auf ein Entwicklungszertifikat gesetzt wurde. Dadurch konnte ich die App auf meinen Geräten nicht installieren.

Folgendes habe ich getan, um dieses Problem zu lösen.

Projekt -> Ziele -> Wählen Sie Ihre App -> Build-Einstellungen -> Code Signing Identity -> Debug -> Tippen Sie doppelt auf "iPhone Distribution" und ändern Sie sie in "iPhone Developer".

29
Muchab

Ich habe das Kontrollkästchen deaktiviert und dann die Option "Signaturen automatisch verwalten" aktiviert. Das hat es für mich behoben.

27
Loke

Wofür sich das automatische Signieren lohnt, ist jedes Mal fehlgeschlagen, bis ich lokale Profile manuell gelöscht habe in: ~/Library/MobileDevice/Provisioning Profile

Danach funktionierte das automatische Signieren einwandfrei und es wurden die richtigen Profile von den Servern von Apple bereitgestellt.

Dies betraf nur einige Builds, insbesondere diejenigen, für die ich manuell Profile für die Watch-App erstellt hatte.

22
blackjack75

Für diejenigen, die in Xcode8 noch mit diesem Problem zu kämpfen haben. Für mich war ein Duplikat eines Zertifikatsproblems, so habe ich es gelöst:

Ich las die Antwort von Nick und begann meine Untersuchung. Ich habe alle Schlüssel und Zertifikate in meinem speziellen Fall (in ~/Library/Keychains/System.keychain) geprüft.

Als ich die Datei öffnete, stellte ich fest, dass ich zwei iPhone-Distributionszertifikate besaß (das war das Zertifikat, das Xcode mich anforderte), eines mit dem privaten iOS-Distribution-Schlüssel, den ich von Anfang an verwende, und ein weiteres iPhone-Distributionszertifikat, das es private Key hatte einen Namen (iOS-Distribution: NAME), der mir nicht bekannt war. Ich habe dieses letzte Zertifikat gelöscht, Xcode erneut gestartet und das Problem war weg. xCode konnte diesen Konflikt nicht lösen und gab deshalb ständig Fehler beim Signaturzertifikat aus.

Überprüfen Sie Ihre Schlüsselbunde. Vielleicht haben Sie ein doppeltes Zertifikat.

15
S.Go.Mot

Sie können auch Probleme beim Signieren von Codes mit dem großartigen Fastlane Toolkit lösen. Autoren geben sich viel Mühe, um das Erstellen und Signieren von iOS-Apps (und mehr) effektiv zu automatisieren.

Daher gibt es in der erwähnten Suite ein Werkzeug sigh, das alle Probleme mit der Signatur auf magische Weise löst, daher der Name :) Eine gute Sache ist, dass dieses Tool ein Wissen über häufige Probleme mit der Signatur enthält und die meisten von ihnen erkennen und lösen kann.

Fastlane wird als Ruby-Edelstein installiert:

gem install fastlane

Und dann einfach aufgerufen:

fastlane sigh --development

Beantworte zwei Fragen und voila:

[11:56:55]: No existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you
[11:57:01]: Creating new provisioning profile for 'com.myapp' with name 'com.myapp Development'
[11:57:06]: Downloading provisioning profile...
[11:57:09]: Successfully downloaded provisioning profile...
[11:57:09]: Installing provisioning profile...

Gehen Sie schließlich zu Build Settings -> Signing und wechseln Sie zu einem neu erstellten Bereitstellungsprofil, dessen Namen Sie gerade in der Befehlsausgabe gesehen haben.

Dieses Beispiel bezieht sich auf Probleme beim Entwicklungscode (auf dem Gerät ausgeführt). Überprüfen Sie Seufzendokumentation für alle anderen Optionen.

10
Tomek Cejner

Wenn Sie manuell signieren (was ich auf jeden Fall empfehlen würde), kann dieser Fehler auftreten, da Xcode der Meinung ist, dass ein Release-Build mit einem Entwicklerzertifikat signiert werden sollte, das offensichtlich nicht in einem Release-Bereitstellungsprofil enthalten ist.

Es gibt eine Build-Einstellung, die definiert, welches Zertifikat für welche Build-Konfiguration verwendet werden soll. Um es zu ändern, gehen Sie zu Einstellungen erstellen und suchen Sie nach Code Signing Identity . Wenn diese Option erweitert ist, sollten für jede Build-Konfiguration (normalerweise Debug und Release) separate Zeilen mit der ausgewählten Identität (normalerweise iOS Developer oder iOS Distribution) in der zweiten Spalte vorhanden sein. Stellen Sie sicher, dass für jede Build-Konfiguration die richtige Identität festgelegt ist.

In einigen Fällen können die Build-Konfigurationen auch erweitert werden. Stellen Sie sicher, dass auch die Unterelemente auf die richtigen Identitäten eingestellt sind.

7
Mark

In meinem Fall hatte ich im Schlüsselbund zwei Zertifikate mit demselben Namen. Ich entfernte eines der Zertifikate, das doppelt vorhanden ist, und löste das Problem.

5
Arshad Shaik
  1. Löschen Sie das Entwicklerzertifikat ohne privaten Schlüssel.
  2. Löschen Sie das Bereitstellungsprofil von Ihrem Computer mit dem Ordner "Wechseln zu" (~/Library/MobileDevice/Provisioning Profiles).
  3. Aktivieren Sie dann zunächst das Kontrollkästchen Signatur automatisch verwalten in den Projekteinstellungen mit Auswahl des Teams.
  4. Singen Sie im Apple-Entwicklerkonto, bearbeiten Sie das Bereitstellungsprofil, wählen Sie alle verfügbaren Entwicklerzertifikate aus, laden Sie sie herunter und fügen Sie sie in XCODE hinzu.
  5. Wählen Sie das Bereitstellungsprofil und die Codesignaturidentität in den Einstellungen zum Erstellen von Projekten aus
4
PS_dev

"Automatische Signatur aktivieren" und dann ein Team aus dem Dropdown-Menü auswählen, half mir bei diesem Problem.

4
Warp

Hatte den gleichen Fehler. Profile scheinen erneuert, neue Zertifikate hinzugefügt, ich habe sie sogar beim Download überprüft. Auch frühere Entwicklerzertifikate wurden widerrufen, vom Bereitstellungsprofil ausgeschlossen. Aber Xcode fragt mich immer noch nach früheren Zertifikaten mit Fehler:

No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found

also, was ich getan habe, um es zu reparieren: 

  1. Gehe Build Settings -> Signing -> Code Signing Identity
  2. Suchen Sie nach allen 'FORMER_DEVELOPER'-Zertifikaten und wählen Sie die gewünschte Option. 

Ich hoffe es hilft jemandem. 

Ich habe dies noch nicht gesehen, aber wenn Sie nach dem Wiederherstellen Ihrer Bereitstellungsprofile immer noch Probleme haben, die vorhandenen löschen, die sich in Ihrem Ordner "Provision Profiles" befinden, nach Dupes in Ihrem Schlüsselbund suchen usw. (alle anderen Antworten ITT), öffnen Sie Ihr Ziel> Build-Einstellungen> Codesignatur und stellen Sie sicher, dass dort alles konsistent aussieht. Ich hatte zum Beispiel die Codesignaturkennung für Debug in eine Verteilungsidentität geändert, die offensichtlich nicht funktioniert, da das Development Provisioning Profile das Verteilungszertifikat nicht hat und den Fehler überhaupt verursacht hat.

2
jabruzzi

Wenn Sie versuchen, Ihre App zu iTunes Connect hochzuladen (Ihre Provisioning-Profile sind auf "Verteilung" eingestellt), gehen Sie zu Projekteinstellungen -> Build-Einstellungen -> Codesignierung. Stellen Sie sicher, dass Sie alle Debug- und Freigabeoptionen auf Ihr Verteilungsbereitstellungs-Bereitstellungsprofil festgelegt haben.

2
Niall Kehoe

Für mich hat keine der oben genannten Lösungen funktioniert. Ich habe von zwei älteren Macs auf einen neuen Mac migriert und versucht, Release-/Debug-Profile für Xcode [~ # ~] ohne [~ # ~] Xcode verwaltet sie automatisch.

Die Lösung für mich war, dass ich beim Erstellen der beiden neuen Zertifikate [~ # ~] auch [~ # ~] eingeben musste meine Bereitstellungsprofile und fügen (sowohl unter der Distribution als auch unter dev) die neuen Zertifikate zu den so erkannten Bereitstellungsprofilen hinzu. Nachdem Sie dies getan und heruntergeladen haben, hat xcode alle Fehler beseitigt und es kann losgehen.

Hoffe das hilft jemandem!

2
Jprofficial

Ich habe das gleiche Problem ... Ich habe den Mac gewechselt. Wenn ich das Xcode-Zertifikat heruntergeladen habe, wird eine Fehlermeldung angezeigt: "Der Fehler ist, dass das Sicherheitsprofil die Zertifikatsignatur nicht enthält."

1) Gehen Sie zu https://developer.Apple.com/account/ios/profile/limited/edit .__ Wählen Sie das Projekt aus => Bearbeiten => Zertifikate => Wählen Sie Alle => Erstellen => Herunterladen

2) In Xcode: Projektdatei => Signieren (Debuggen) => Bereitstellungsprofil => Profil importieren => Datei mit 1 auswählen

1
maxwell

Ich habe eine dieser E-Mails von Apple erhalten:

Lieber John Doe, 

Das folgende Zertifikat wurde entweder von einem Mitglied Ihres Entwicklungsteam oder abgelaufen ist: 

Zertifikat: iOS-Entwicklung 

Name des Teams: Honey Team, LLC 

Dies hat keine Auswirkungen auf Apps, die Sie im App Store eingereicht haben, oder Ihre Fähigkeit, Ihre Apps zu aktualisieren. Wenn Sie die Bereitstellung verwenden Profile, die dieses Zertifikat enthalten, müssen vor .__ neu erstellt werden. Sie können wiederverwendet werden. Weitere Informationen finden Sie in der "App-Signaturübersicht" Abschnitt der Xcode-Hilfe.

Freundliche Grüße, 

Apple Developer Program-Unterstützung


Ich habe ein neues Zertifikat erstellt, das widerrufen das vorherige Zertifikat (lokal und auf einem anderen Mac des Entwicklers) _ hat. Damit es funktioniert, muss ich die neuen Bereitstellungsprofile herunterladen

Die Lösung ist zu:

  • melden Sie sich bei Apple an
  • entferne/widerrufe die vorherigen Zertifikate, die in meinem Namen erstellt wurden. 
  • fügen Sie das neu -Zertifikat dem Bereitstellungsprofil hinzu. Sie können das neuere anhand des Ablaufdatums identifizieren
  • laden Sie sie erneut von Xcode herunter. Xcode >> Konto >> Alle Profile herunterladen
  • starten Sie Xcode neu

Ich hatte keinen solchen Zugang. Dieser Zugriff stand nur dem Administrator unseres Teams zur Verfügung. Daher habe ich weder Screenshots noch sicher, ob diese Schritte zu 100% korrekt sind.

1
Honey

Hier sind die Schritte für mich gelöst (Für diejenigen, die das gleiche Problem in XCode 9.2 haben):

  1. Lokale Profile wurden nur manuell in ~/Library/MobileDevice/Provisioning Profile gelöscht.

  2. Alle Zertifikate und das Bereitstellungsprofil wurden vom Entwicklerkonto gelöscht und erstellt.

  3. Entwicklerkonto aus Xcode entfernt und neu hinzugefügt.

Mein Problem gelöst! :-)

1
Shoaib Bagwan

Ich hatte viele Tage damit zu kämpfen. 

Schritt 1: Alle Zertifikate, Bereitstellungsprofil, AppID, Schlüssel usw. wurden aus dem Entwicklerkonto gelöscht.

Schritt 2: Die Push-Benachrichtigungszertifikate, das Bereitstellungsprofil, die App-ID usw. neu erstellt.

Schritt 3: Alle Zertifikate aus dem Schlüsselbund gelöscht.

Schritt 4: Das gesamte Bereitstellungsprofil von ~/Library/MobileDevice/Provisioning Profile gelöscht.

Schritt 5: Nur die erforderliche Bereitstellungsdatei hinzugefügt und getestet. Es funktioniert gut.

0
A.G

Laden Sie die Zertifikate/Profile direkt aus dem Member Center herunter und nicht aus Xcode. 

Es hat für mich funktioniert, als ich sie manuell aus dem Mitgliedercenter heruntergeladen habe.

0
Somya

Es bedeutet, dass Sie eine der folgenden Aktionen ausführen müssen:

  1. Sie sollten im Developer Center ein Zertifikat erstellt und dieses Zertifikat dann in das Bereitstellungsprofil aufgenommen haben, das Sie in XCode importieren. 
  2. Andernfalls, wenn Sie ein von einer anderen Person erstelltes Zertifikat verwenden, dann fordern Sie sie dazu auf, ihr Zertifikat und den privaten Schlüssel (.p12-Datei) für Sie freizugeben/zu exportieren. Sie müssen dieses Zertifikat in Ihren Schlüsselbund aufnehmen. hier

Eine Lösung für Nummer 2, wenn Sie die Zertifikat- und .p12-Datei nicht vom Ersteller abrufen können, wäre die Option "Signieren automatisch verwalten". 

0
javatogo

Xcode 11

Das ist der Fehler, den ich bekommen habe

Das Bereitstellungsprofil "XXX" enthält kein Signaturzertifikat "Apple Development: XXX (XXX)". `` `

Jetzt hat Xcode 11 automatisch ein Zertifikat "Apple Development: XXX" erstellt, das für alle Plattformen gültig ist

https://developer.Apple.com/account/resources/certificates/list

Du musst nur

  1. Gehen Sie zu https://developer.Apple.com
  2. Wechseln Sie zu Ihrem Bereitstellungsprofil
  3. Überprüfen Sie, ob dieses Zertifikat ausgewählt ist
0
Ted

Dieses Problem ist darauf zurückzuführen, dass der private Schlüssel im Zertifikat in Ihrem Profil nicht mit dem in Ihrem Schlüsselbund übereinstimmt. Ich löse das durch

  1. löschen Sie alle iPhone Developer-Zertifikate im Schlüsselbund.
  2. alle Zertifikate im Apple-Konto löschen.
  3. mit xcode "Zertifikate verwalten" fügen Sie ein Zertifikat hinzu. Manchmal haben Sie noch ein Zertifikat in Ihrem Mac. Ich weiß jedoch noch nicht, wo es sich jetzt befindet. Wenn es erfolgreich hinzugefügt wird, wird dieses Zertifikat auch in Ihrem Apple-Konto angezeigt Profil mit diesem Zertifikat und Download ... gehe zu 5
  4. wenn Sie "Zertifikate verwalten" verwenden, kann das Zertifikat nicht hinzugefügt werden. Sie können ein neues Zertifikat erstellen.
  5. fertig.

gleiche Antwort mit Code-Signaturproblem in Xcode Version 8 .

0
Yu Chai

Dies geschieht, weil das Bereitstellungsprofil die Datei nicht finden kann für das Zertifikat, mit dem es verknüpft ist.

Reparieren:

  1. Überprüfen Sie, welches Zertifikat mit Ihrem Bereitstellungsprofil verknüpft ist, indem Sie im Abschnitt "Zertifikate, Bezeichner und Profile" des Apple Developer-Dashboards in Ihrem Bereitstellungsprofil auf Bearbeiten klicken 
  2. Laden Sie das Zertifikat vom Dashboard herunter
  3. Doppelklicken Sie auf die Datei, um sie in Ihrem Schlüsselbund zu installieren
  4. Ziehen Sie die Datei in Xcode, um sicherzustellen, dass sie verknüpft ist

Der Fehler sollte jetzt verschwunden sein.

0
Jack

Ich hatte das gleiche Problem und der Grund war ein Pfennig. In den Build-Einstellungen wurde ein falsches Profil und Zertifikat ausgewählt. Ich hatte das nur vor wenigen Tagen gemacht. Sie müssen also nicht "automatisch" in Xcode aktivieren. Überprüfen Sie die Profile in Ihren Build-Einstellungen, bevor Sie dies tun.

0
Ruchi

Wenn Sie auf "Aktivieren der automatischen Signatur" klicken und dann abbrechen, hat es für mich funktioniert, obwohl die eigentliche Änderung folgende war:

ALWAYS_EMBED_Swift_STANDARD_LIBRARIES = YES;

oder in Xcode heißt es Always Embed Swift Standard Libraries

0
tristanl

Ich hatte verbleibende private Schlüssel von Zertifikaten, die ich widerrufen hatte, Zertifikate waren weg, aber nicht die privaten Schlüssel. Das Löschen löste das Problem.

Um sie zu finden:

  1. Öffnen Sie den Schlüsselbundzugriff
  2. Klicken Sie links im Menü unter "Kategorie" auf "Schlüssel"
  3. Suchen Sie nach "iOS Developer: ..." - Schlüsseln, an die kein Zertifikat gebunden ist
  4. Ich habe sie gelöscht und das Problem ist weg

Der im Bild hervorgehobene Schlüssel ist ein Beispiel für einen privaten Schlüssel ohne Zertifikat.

The highlighted item was one key causing issues, deleting it solved issue

0
Dylan w