webentwicklung-frage-antwort-db.com.de

Xcode 4 - installiert Schlüsselbund-Zertifikate, die ich lösche

Ich erhalte diesen Fehler:

CodeSign-Fehler: Die Zertifikatsidentität "iPhone Developer: XXX" wird mehrmals im Schlüsselbund angezeigt. Für das Codesign-Tool ist nur eines erforderlich.

Zuerst mache ich mir aber keine Sorgen, ich gehe einfach in den Schlüsselbund und lösche das (ältere) Duplikat, was ich getan habe. Ich bin zurückgegangen, habe Xcode geschlossen, Xcode und Projekt erneut geöffnet, derselbe Fehler. Ich dachte für mich. Zurück in den Schlüsselbund und das Zertifikat ist wieder da. Ich lösche beide Zertifikate, wiederhole und bemerke, dass die beiden gelöschten Zertifikate beim Laden des Projekts wieder im Schlüsselbund angezeigt werden.

Nach langem Suchen stellte ich sicher, dass ich das Zertifikat nicht im Systemschlüsselbund hatte, was ich nicht tat. Habe auch eine sauber gemacht und neu aufgebaut. Als ich Duplikate mit Xcode 3 hatte, konnte ich einfach das Duplikat des Schlüsselbunds bereinigen und war gut. Aber mit Xcode 4 werden sie buchstäblich nur irgendwie neu installiert, wenn ich das Projekt öffne. Ich habe sogar alle .cer-Dateien auf meinem System gelöscht, von denen sie möglicherweise abgerufen wurden.

Irgendwelche Vorschläge?

85
Codezy

Die Lösung bestand darin, die Organizer-Profile unter Library-Provisioning zu öffnen, alle zu löschen und alle noch benötigten Profile neu zu installieren.

103
Codezy

Ich hatte das gleiche Problem und die obigen Lösungen haben mein Problem nicht gelöst (beinahe).

Ich hatte dieselbe doppelte Entwickler-ID/-Zertifikat, über die sich jeder beschwert, und ich habe versucht, alle meine Profile zu löschen, mein Zertifikat zu widerrufen/erneut auszustellen, sicherzustellen, dass sich keine im Systemschlüsselbund befanden, neu zu starten usw.

Am Ende stellte sich heraus, dass was ein Zertifikat im Systemschlüsselbund war, das abgelaufen hatte und daher standardmäßig in der Liste ausgeblendet war.

Stellen Sie sicher, dass abgelaufene Zertifikate in KeyChain angezeigt werden

Um dies zu tun:

  1. Öffnen Sie den Schlüsselbundzugriff
  2. Klicken Sie auf Menü anzeigen
  3. Klicken Sie auf Abgelaufene Zertifikate anzeigen
  4. dann abgelaufene Entwicklerzertifikate suchen und löschen
33
Jagu

Xcode 4 hat eine neue Funktion "Automatic Device Provisioning". Es befindet sich im Organizer unter Bibliotheks-/Bereitstellungsprofilen. Wenn Sie dies aktiviert haben, werden Ihre Bereitstellungsprofile automatisch vom Apple Entwickler-Bereitstellungsserver) heruntergeladen, und Sie erhalten daher die Fehlermeldung, dass Duplikate vorhanden sind. Der einfachste Weg, dies zu beheben, besteht darin, alle Bereitstellungsprofile und zu löschen Klicken Sie auf Aktualisieren für "Automatische Gerätebereitstellung". Dadurch werden Ihre Bereitstellungsprofile vom Server geladen und das Problem behoben.

11
Cyprian

wenn Sie mit dem Schlüsselbundzugriff herumspielen möchten, um das abgelaufene Zertifikat zu entfernen, versuchen Sie Folgendes:

  • erstelle einen neuen Schlüsselbund, nenne ihn "abgelaufen" und verschiebe NUR das abgelaufene Zertifikat dorthin.
  • löschen Sie den neu erstellten "abgelaufenen" Schlüsselbund, der NUR das abgelaufene Zertifikat enthält, und wählen Sie "Verweise und Dateien löschen".

das abgelaufene Zertifikat verschwindet zusammen mit dem Schlüsselbund. funktionierte perfekt für mich.

7
felis
  1. Entfernen Sie alle Bereitstellungsprofile aus XCode Organizer.
  2. Entfernen Sie alte Entwicklerzertifikate aus dem Schlüsselbund.
  3. Generieren Sie Bereitstellungsprofile nur mit dem richtigen Entwicklerzertifikat.
  4. Laden Sie die neuen Bereitstellungsprofile herunter und installieren Sie sie.

- BEARBEITEN -

Führen Sie die Antwort von @ Codezy und den Kommentar von @ iphone007 zusammen.

6
iwill

Dafür habe ich einen halben Tag gebraucht und endlich die Lösung gefunden

  1. Öffnen Sie KeyChain Access.app
  2. Wählen Sie "System" im Menü "Schlüsselbunde" im linken Bereich des Bildschirms der Schlüsselbundanwendung
  3. Wählen Sie "Zertifikate" im Menü "Kategorie"
  4. Entfernen Sie alle alten Zertifizierungen.

Schließen Sie dann Keychain.app und gehen Sie zu Xcode -> Organizer

  1. Entfernen Sie alle Bereitstellungsprofile im Menü Bibliothek
  2. Entfernen Sie alle Bereitstellungsprofile im Menü Geräte
  3. Klicken Sie im Menü Bibliothek -> Bereitstellungsprofil auf die Schaltfläche "Aktualisieren"
  4. Fügen Sie Ihrem Gerät die erforderlichen Profile hinzu

Baue erneut deine App :)

2
Stan

Löschen von Bereitstellungsprofilen in der Organizer-Bibliothek. Außerdem sollten Sie das iPhone-Entwicklerzertifikat in Keychain Access löschen. (Der Name des Zertifikats ist wahrscheinlich wie "iPhone Developer: XXXXX ..." und wird durch ein rotes X als abgelaufen gekennzeichnet.)

2
Kenial

Ich habe alles versucht, was hier vorgeschlagen wurde, aber nichts hat bei mir funktioniert, außer dass XCode 4.3 neu installiert wurde, was den Fall magisch gelöst hat.

1
nh7a

Für die Nachwelt ist hier die Strategie, um dieses Problem in unserem automatisierten Build-Skript zu umgehen:

  1. Verschieben Sie vor dem Erstellen das Verzeichnis ~/Library/MobileDevices/Provisioning Profiles zur Seite
  2. Überprüfen Sie, ob iPhone Configuration Utility ausgeführt wird, und schließen Sie es (Zertifikate werden immer wieder angezeigt, wenn diese App geöffnet ist. In XCode 4.1 müssen Sie auch den Organizer schließen.)
  3. Lass dich bauen
  4. Verschieben Sie das Verzeichnis Provisioning Profiles zurück
  5. Profitieren?
1
Bryan

Fand heraus, eine wirklich einfache Möglichkeit, dies in 4.6.1 zu beheben. Sie können dies tun, ohne etwas neu zu starten oder Profile zu löschen!

Mit Keychain Access und geöffnetem Xcode-Projekt:

  1. Öffnen Sie in Xcode Organizer - "Geräte" und wählen Sie das "Team" mit dem doppelten Zertifikat aus.
  2. Wechseln Sie zu Schlüsselbundzugriff und löschen Sie die alten doppelten Zertifikate. Hinweis: Stellen Sie sicher, dass Sie "Abgelaufene Zertifikate anzeigen" aktivieren, um keine zu verpassen.
  3. Die Zertifikate sind aus dem "Team" -Profil im Xcode Organizer verschwunden.
  4. Projekt bereinigen und bauen.

Ich hoffe es hilft!

1
John Caplinger

Für das, was es wert ist, @AndreasPrang, hat Ihre Antwort funktioniert, als alle oben genannten nicht. Ich konnte sehen, dass das abgelaufene Zertifikat nirgendwo im Schlüsselbund war, aber als ich einen Build machte, sagte Xcode, dass es das war. Das Löschen der Bereitstellungsprofile (alle), die Auswahl meines Namens im Bereich Team und das Klicken auf das Aktualisierungssymbol unten rechts im Organizer haben ebenfalls nicht geholfen. Ein Neustart von Xcode hat nicht geholfen, aber das Herunterfahren von XCode, Löschen von ~/Library/Developer/Xcode, hat geholfen. Als ich XCode neu gestartet habe, hat es alles neu aufgebaut und war glücklich.

0
fporcaro

Der andere Grund, warum xcode Ihr Zertifikat weiterhin installiert, ist, dass Sie nicht den Schlüssel, sondern nur das Zertifikat gelöscht haben. Sie müssen den privaten Schlüssel (und den entsprechenden öffentlichen Schlüssel) sowie das Zertifikat im Schlüsselbund löschen, andernfalls installiert xcode das Zertifikat neu.

Überprüfen Sie hier m Entwicklungs- und Vertriebszertifikate von Ihrem Schlüsselbund zu entfernen

0
Qiulang

Zitiert eine Antwort auf ein Duplikat dieser Frage, einige der Fehler von Xcode in diesem Bereich kann nur durch einen Neustart von OS X behoben werden.

Am Ende habe ich Erfolg gehabt, indem ich alle in den Antworten auf diese Frage genannten Elemente gelöscht, neu gestartet und dann die benötigten Teile manuell installiert habe (ich habe der Funktion zum automatischen Herunterladen von Profilen/Zertifikaten nicht vertraut/sie nicht ausprobiert).

0
Abhi Beckert

die obige Methode funktioniert in meinem Fall nicht

schließlich gehe ich zum Schlüsselbund

und suchen Sie den Schlüssel, indem Sie den Namen eingeben

ich habe endlich das Zertifikat gefunden, das vorher gelöscht werden soll. dann habe ich es gelöscht und das problem gelöst

es ist wirklich frustrierend und ich weiß nicht, ob es der Fehler ist ... wirklich anstrengend.

0
chings228

Habe gerade Xcode 4.6.1 installiert und habe wieder angefangen, dieses Problem zu haben. Das letzte Mal war eine lange Zeit zurück. Ich habe die alten Bereitstellungsprofile und die Zertifikate gelöscht, konnte sie aber immer noch nicht erstellen.

Dieses Mal stellte sich heraus, dass im Teamkonto des Entwicklerportals 2 Zertifikate für mich aufgelistet waren. Der erste war abgelaufen, der zweite nicht. Xcode griff weiterhin nach dem ersten, den es beim Aktualisieren gefunden hatte (oder nach beiden).

Ich habe beide Zertifikate aus dem Schlüsselbund gelöscht, dann den guten manuell vom Apple-Portal heruntergeladen und manuell zum Schlüsselbund hinzugefügt. Jetzt kann ich wieder bauen.

(Und ich habe eine Anfrage an den Teamadministrator gesendet, um das alte Zertifikat zu entfernen.)

0
Walt Sellers