Xcode
Zertifikate, Bereitstellungsprofile und Codesignierung
Suche…
Wählen Sie den richtigen Code-Signatur-Ansatz
Wenn Sie gerade ein neues Projekt beginnen, sollten Sie darüber nachdenken, wie Sie mit der Codesignatur umgehen möchten.
Wenn Sie mit der Codesignierung noch nicht vertraut sind, lesen Sie die WWDC-Sitzung , in der die Grundlagen der Codesignatur in Xcode beschrieben werden.
Um Ihre App ordnungsgemäß mit einem Code zu signieren, müssen Sie die folgenden Ressourcen auf Ihrem lokalen Computer haben:
- Der private Schlüssel (
.p12
Datei) - Das Zertifikat (
.cer
Datei), das dem privaten Schlüssel entspricht - Das Bereitstellungsprofil (
.mobileprovision
Datei), das mit dem lokal installierten Zertifikat und dem privaten Schlüssel übereinstimmt
Im Apple Developer Portal muss außerdem eine gültige App-ID für Ihr Bereitstellungsprofil vorhanden sein.
Verwenden der Code-Signaturfunktion von Xcode
Gelegentlich funktioniert die Einstellung Automatic
als Bereitstellungsprofil nicht zuverlässig, da nur das zuletzt aktualisierte Bereitstellungsprofil ausgewählt wird, unabhängig davon, ob das Zertifikat installiert ist.
Aus diesem Grund wird empfohlen, ein bestimmtes Bereitstellungsprofil irgendwie anzugeben:
Xcode 7 und niedriger
Sie sollten vermeiden , dass die Klick Fix Issue
- Taste (Es gibt eine Xcode - Plugin , das die Schaltfläche deaktiviert), wie es manchmal vorhandene Zertifikate widerrufen und mit ihm die Provisioning - Profilen.
Leider können Sie den Namen des Bereitstellungsprofils nicht in Xcode 7 angeben. Stattdessen können Sie die UUID des Profils angeben, die sich jedes Mal ändert, wenn das Profil erneut generiert wird (z. B. wenn Sie ein neues Gerät hinzufügen).
Um dieses Problem zu umgehen , lesen Sie in XcodeProject.md nach, wie Sie beim Erstellen Ihrer App ein Bereitstellungsprofil an Xcode übergeben.
Xcode 8 und höher
Mit der Veröffentlichung von Xcode 8 hat Apple die Code-Signatur erheblich verbessert. Folgendes wurde geändert:
- Keine Schaltfläche zum
Fix Issue
Problemen mehr, stattdessen werden alle Codesignierungsprozesse im Hintergrund ausgeführt und zeigen das Protokoll direkt in Xcode an - Sie können jetzt das Bereitstellungsprofil anhand des Namens anstelle der UUID angeben. Weitere Informationen finden Sie unter XcodeProject.md.
- Verbesserte Fehlermeldungen, wenn etwas schief geht. Wenn Sie auf Code-Signierungsfehler stoßen, sollten Sie immer versuchen, Xcode zu erstellen und zu signieren, um genauere Fehlerinformationen zu erhalten. (Weitere Informationen finden Sie unter Troubleshooting.md. )
Manuell
Sie können Zertifikate und Bereitstellungsprofile mithilfe des Apple Developer Portal immer manuell erstellen und verwalten. .p12
Sie den privaten Schlüssel ( .p12
) Ihrer Zertifikate an einem sicheren Ort auf, da sie nicht wiederhergestellt werden können, wenn Sie sie verlieren.
Sie können das Zertifikat ( .cer
) und das Bereitstellungsprofil ( .mobileprovision
) .mobileprovision
vom Apple Developer Portal herunterladen.
Wenn Sie Ihr Zertifikat widerrufen oder es abläuft, sind alle zugehörigen Bereitstellungsprofile ungültig.
Fastlane-Match verwenden
Das Übereinstimmungskonzept wird in der Anleitung zur Codesignierung beschrieben und ist der empfohlene Ansatz zur Codesignierung, wenn Sie fastlane verwenden
Mit match speichern Sie Ihre privaten Schlüssel und Zertifikate in einem Git-Repo, um sie zwischen Computern zu synchronisieren. Dadurch können Sie problemlos neue Teammitglieder aufnehmen und neue Mac-Maschinen einrichten. Dieser Ansatz ist sicher und verwendet eine Technologie, die Sie bereits verwenden.
Um mit match zu beginnen, müssen Sie Ihre vorhandenen Zertifikate widerrufen.