iOS-App kann nicht in XCode signiert werden - in einem Haken 22

Ich habe dann meine iOS-App archiviert und muss sie jetzt validieren und in den App Store übertragen

xcode sagt dies auf der Hauptseite, wenn das Kontrollkästchen Automatisches Signieren deaktiviert ist ... also manuelles Signieren

dann ausgewähltes Bereitstellungsprofil: Prototyp prod (meine App)

Zustand:

Kein Signaturzertifikat „iOS Distribution“ gefunden Es wurde kein Signaturzertifikat „iOS Distribution“ gefunden, das der Team-ID „X8B4734GCE“ mit einem privaten Schlüssel entspricht.

aber wenn ich auf Zertifikate verwalten klicke,
sagt das Fenster

iOS Distribution Certificates
iOS Distribution    john stensland      good date    Missing Private Key

wenn ich dann auf + zeichen klicke und auswähle

iOS-Verteilung

Popup-Meldung sagt

Sie haben bereits ein aktuelles iOS-Verteilungszertifikat oder eine ausstehende Zertifikatsanforderung

dann auf Seite https://developer.apple.com/account/resources/certificates/add

iOS-Verteilung (App Store und Ad-hoc)
Signieren Sie Ihre iOS-App zur Übermittlung an den App Store oder zur Ad-hoc-Verteilung.
Maximale Anzahl generierter Zertifikate

Wie grabe ich mich aus diesem Loch heraus?

xcode 10.3

osx 10.14.6

das ist interessant

stens@chambord:~/src/github.com/foo/bar/.meteor/local/cordova-build/platforms/ios$ xcodebuild -showBuildSettings
Build settings for action build and target BamPow:
2020-02-21 16:59:25.836 xcodebuild[6533:99111]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-14492.2/IDEFoundation/Provisioning/IDEProfileQualification.m:509
Details:  Xcode could not determine type of profile "/Users/stens/Library/MobileDevice/Provisioning Profiles/4ba9f335-1ffa-4ad8-9c92-72fd580ced9d.mobileprovision" (could be {(
)})
Object:   <IDEProfileQualification: 0x7fbc7611f210>
Method:   -_profileTypeQualifier
Thread:   <NSThread: 0x7fbc7378f950>{number = 8, name = (null)}
Please file a bug at https://bugreport.apple.com with this warning message and any useful information you can provide.
2020-02-21 16:59:25.837 xcodebuild[6533:99111]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-14492.2/IDEFoundation/Provisioning/IDEProfileQualification.m:509
Details:  Xcode could not determine type of profile "/Users/stens/Library/MobileDevice/Provisioning Profiles/f87b46f0-e0e3-4c65-9497-d80eaed5bdcd.mobileprovision" (could be {(
)})
Object:   <IDEProfileQualification: 0x7fbc761c8d60>
Method:   -_profileTypeQualifier
Thread:   <NSThread: 0x7fbc7378f950>{number = 8, name = (null)}
Please file a bug at https://bugreport.apple.com with this warning message and any useful information you can provide.
2020-02-21 16:59:26.049 xcodebuild[6533:99080]  iPhoneConnect: 📱<DVTiOSDevice (0x7fbc76361910), bauernkrieg, iPhone, 13.3.1 (17D50), 1c93668b892495ee9a62dc879152529241305427> unable to mount developer disk image, (Error Domain=com.apple.dtdevicekit Code=601 "Could not locate device support files." UserInfo={DeviceType=iPhone8,1, NSLocalizedDescription=Could not locate device support files., NSLocalizedRecoverySuggestion=This iPhone 6s is running iOS 13.3.1 (17D50), which may not be supported by this version of Xcode.}) {
    DeviceType = "iPhone8,1";
    NSLocalizedDescription = "Could not locate device support files.";
    NSLocalizedRecoverySuggestion = "This iPhone 6s is running iOS 13.3.1 (17D50), which may not be supported by this version of Xcode.";
}
2020-02-21 16:59:26.375 xcodebuild[6533:99111]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-14492.2/IDEFoundation/Provisioning/IDEProfileQualification.m:509
Details:  Xcode could not determine type of profile "/Users/stens/Library/MobileDevice/Provisioning Profiles/4ba9f335-1ffa-4ad8-9c92-72fd580ced9d.mobileprovision" (could be {(
)})
Object:   <IDEProfileQualification: 0x7fbc760f30b0>
Method:   -_profileTypeQualifier
Thread:   <NSThread: 0x7fbc7378f950>{number = 8, name = (null)}
Please file a bug at https://bugreport.apple.com with this warning message and any useful information you can provide.
2020-02-21 16:59:26.375 xcodebuild[6533:99111]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-14492.2/IDEFoundation/Provisioning/IDEProfileQualification.m:509
Details:  Xcode could not determine type of profile "/Users/stens/Library/MobileDevice/Provisioning Profiles/f87b46f0-e0e3-4c65-9497-d80eaed5bdcd.mobileprovision" (could be {(
)})
Object:   <IDEProfileQualification: 0x7fbc76536280>
Method:   -_profileTypeQualifier
Thread:   <NSThread: 0x7fbc7378f950>{number = 8, name = (null)}
Please file a bug at https://bugreport.apple.com with this warning message and any useful information you can provide.
    ACTION = build
    AD_HOC_CODE_SIGNING_ALLOWED = NO
    ALTERNATE_GROUP = staff
    ALTERNATE_MODE = u+w,go-w,a+rX
    ALTERNATE_OWNER = stens
    ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO
    ALWAYS_SEARCH_USER_PATHS = NO

Also rüber auf developer.apple.com, um sie zu widerrufen, iOS Distribution certificatedamit ich eine neu erstellen kann, die sie mir zeigt

Möchten Sie das Zertifikat widerrufen?

Durch das Widerrufen dieses Zertifikats wird es ungültig, und alle zugehörigen Dienste oder Bereitstellungsprofile, die dieses Zertifikat verwenden, können betroffen sein.

Ist das ein gefährlicher Vorschlag? Ich habe jede Menge Leckereien in der Produktion, die vor sich hin summen ... es ist nicht klar, was impliziert wird, wenn es sagt

wird es und alle damit verbundenen Dienste ungültig machen

Soll ich also dieses iOS-Verteilungszertifikat widerrufen und ein neues erstellen? Ist das die Notausstiegsluke?

Aktualisieren ja, nur widerrufen, dann ein neues Zertifikat erstellen -> herunterladen -> doppelklicken -> es wird in keychaing/xcode hochgeladen, dann erscheint es in xcode -> Einstellungen -> Konten -> Apple ID auswählen -> Team -> Zertifikate verwalten. .dann xcode Automatisches Signieren hat funktioniert...Moral ist die Browserwarnung beim Widerrufen zu ignoriereniOS Distribution Certificate

Antworten (1)

Sie scheinen zu glauben, dass es einen Widerspruch zwischen den beiden Nachrichten gibt, die Sie erhalten, aber tatsächlich sagen sie dasselbe.

Ihnen fehlt der private Schlüssel für Ihr iOS-Verteilungszertifikat auf Ihrem Computer. Ohne den privaten Schlüssel können Sie das iOS-Verteilungszertifikat nicht zum Signieren verwenden.

Sie (oder jemand anderes in Ihrem Team) haben diesen privaten Schlüssel irgendwann generiert. Wenn Sie den privaten Schlüssel auf einem anderen Computer oder in einem Backup haben oder ihn von jemand anderem erhalten können, müssen Sie nur den Schlüssel von diesem anderen Computer exportieren und auf diesem Computer importieren. Dann können Sie mit dem automatischen Signieren oder dem manuellen Signieren fortfahren, wie Sie es bereits getan haben.

Wenn Sie den privaten Schlüssel nicht wiederherstellen können, wird Ihnen die Meldung angezeigt, dass Sie kein weiteres iOS-Verteilungszertifikat generieren können, da Sie Ihr Limit bereits erreicht haben. Sie können dies überwinden, indem Sie Ihr(e) vorhandene(s) Zertifikat(e) widerrufen. Das tun Sie auf der Entwickler-Website unter "Zertifikat, Kennungen & Profile". Klicken Sie im Menü links auf „Zertifikat“, klicken Sie auf Ihr Zertifikat und dann auf die rote Schaltfläche „Widerrufen“.

Nachdem Sie Ihr Zertifikat widerrufen haben, können Sie mit der automatischen Signatur fortfahren und ein neues Zertifikat erstellen.

cool ... nach Revoke ... alles lief glatt, ein frisches Zertifikat zu schneiden ... konnte in den App Store geschoben werden - Nochmals vielen Dank