webentwicklung-frage-antwort-db.com.de

Xcode 6 Beta 2-Problem beim Exportieren von .ipa: "Ihr Konto verfügt bereits über ein gültiges iOS-Vertriebszertifikat"

Ich habe Probleme beim Exportieren einer App für die Ad-hoc-Verteilung auf Xcode 6 Beta 2:

Failed to locate or generate matching signing assets

Wenn ich mein Projekt für die Ad-hoc-Entwicklung auf Xcode 6 exportiere, erhalte ich diese Warnung. Ich habe versucht, es auf Xcode 5 zu exportieren und hatte überhaupt keine Probleme, die .ipa zu speichern. Tritt dieses Problem auch auf?

192
3254523

Das hat bei mir funktioniert.

  1. Auf meinem Rechner habe ich sowohl Xcode 5 als auch Xcode 6 Beta behalten.

  2. Archivieren Sie das Projekt in Xcode 6 Beta. Schließen Sie Xcode 6.

  3. Öffnen Sie Xcode 5, gehen Sie zu Organizer und exportieren Sie als Ad-hoc-Build mit dem richtigen Bereitstellungsprofil.

Das ist es!

51
Adnan

Ich hatte vor zwei Tagen das gleiche Problem. Es stellte sich heraus, dass das Problem war:

  1. Ich habe mein eigenes Entwickler-Distributionszertifikat mit einen richtigen privaten Schlüssel
  2. Ich habe ein Enterprise Developer Distribution-Zertifikat meines Kunden ohne einen privaten Schlüssel
  3. Ich versuche, ein Enterprise-Distributionspaket für meinen Kunden zu erstellen
  4. Xcode wirft mir einen vagen Fehler zu: Ihr Konto verfügt bereits über ein gültiges iOS-Vertriebszertifikat

Die Lösung ist: Besorgen Sie sich einen privaten Schlüssel für das Unternehmenskonto meines Kunden. Es gibt 2 mögliche Optionen:

  1. Bitten Sie den Kunden, Anmeldeinformationen für den Zugriff auf sein Enterprise-Entwicklerkonto auf der Apple Website einzugeben. Altes Zertifikat widerrufen und neu erstellen. Sie erstellen dabei den privaten Schlüssel. [~ # ~] Vorsicht [~ # ~] : Widerruf eines Unternehmens Distributionszertifikats macht alle Apps ungültig, die mit diesem Zertifikat signiert und bereitgestellt wurden ( offizielle Info ).
  2. Bitten Sie Ihren Kunden, seinen privaten Schlüssel aus seiner Keychain Access-Anwendung als * .p12-Datei zu exportieren und mit einem Kennwort an Sie zu senden. Sie können den vorhandenen privaten Schlüssel nicht von der Apple Website herunterladen. Der einzige Weg, es zu bekommen, ist, Ihren Kunden zu fragen. Ich habe es geschafft und konnte endlich das Paket machen.

So stellen Sie fest, ob Sie einen privaten Schlüssel für ein Zertifikat haben: Öffnen Sie die Anwendung "Schlüsselbund". Zertifikate auswählen. Finden Sie Ihr Zertifikat. Wenn Sie ein kleines graues Dreieck auf der linken Seite des Zertifikats sehen, öffnen Sie es und Sie sehen Ihren privaten Schlüssel. Kein Dreieck = kein privater Schlüssel.

How to find if you have a private key for certificate

65

Ich hatte das gleiche Problem, ich musste das Kommandozeilen-Tool "xcodebuild" als Workaround verwenden, wobei nur Xcode 6 installiert war (Xcode 5 musste nicht erneut installiert werden).

http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/

Beispiel:

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile "Provisioning Profile Name"
49
Chris Comeau

In meinem Fall löste das Problem das Löschen aller Distributionszertifikate von meinem Apple Entwicklerkonto. Dann gelang es Xcode, erneut Entwicklungs- und Vertriebszertifikate zu erstellen, und das war der Trick.

28
lucaslt89

Ich bekomme eine Lösung ohne das Zertifikat zu erneuern:

1 - Archivieren Sie das Ziel mit der entsprechenden Codesignatur und Bereitstellungsprofil

2 - Rechte Maustaste in der erstellten Datei in Organizer -> Show in Finder

3 - Rechte Taste in der xcarchive Datei -> Paketinhalt anzeigen

4 - Gehen Sie dort in Finder zu Products/Applications /

5 - Laden Sie die Datei Products/Applications/appName zu iTunes hoch

6 - Wenn die App in iTunes angezeigt wird, klicken Sie mit der rechten Maustaste darauf -> Im Finder anzeigen . Dies ist die IPA-Datei

7 - Senden Sie diese IPA über App Loader 3.0

Ich denke nicht, dass es eine dauerhafte Lösung ist, aber ich möchte meine Zertifikate nicht löschen

19
Pedro Lorente

ENDLICH GELÖST !!

1) Erstellen Sie über developer.Apple.com ein NEUES Produktionszertifikat, für das Sie Schlüsselbundzugriff verwenden müssen, um einen neuen privaten Schlüssel auf Ihrem Computer zu erstellen

2) Öffnen Sie im selben Entwicklerportal Ihr mit dieser App verwendetes Verteilungsbereitstellungsprofil und wählen Sie das neue Produktionszertifikat aus, das Sie gerade erstellt haben. Generieren Sie die Bereitstellung, laden Sie sie herunter und führen Sie sie aus

3) Führen Sie Ihre App aus, archivieren Sie sie und exportieren Sie das Archiv.

viola

Ich habe Tage, wenn nicht Wochen gebraucht, um das herauszufinden, ich hoffe, es hilft dir.

17
Jacksonkr

Erstellen Sie ein neues iOS-Distributionszertifikat und wählen Sie Produktion> App Store & AdHoc. Vergessen Sie auch nicht, Target> Build Settings> Code zu ändern. Alle in iOS Distribution signieren (aber nachdem Sie ipa erstellt haben, setzen Sie es zurück auf iOS Developer). Nur dies hat mein Problem gelöst.

14
Yucel Bayram

Ich hatte heute das gleiche Problem mit Xcode 6.1.1

Als ich versuchte, ein iOS-Distributionszertifikat über Xcode hinzuzufügen, war der Fehler derselbe. Es gab bereits mehrere ausgestellte Distributionszertifikate im Member Center und ich wollte sie nicht ungültig machen, da sie bei Verwendung für die Ad - Hoc - Distribution in einer Unternehmensumgebung auch die auf den Geräten installierten Anwendungen ungültig machen würden (zumindest ist dies das, was ich getan habe) hab gelesen).

Was ich getan habe war:
1. Durch Schlüsselbundzugriff wurde eine Anforderung für ein Zertifikat von einer Zertifizierungsstelle generiert. Und speicherte die Anfrage in eine Datei;
2. Im Bereich für Member Center-Zertifikate im Bereich Produktion angemeldet und ein neues Produktionszertifikat für "App Store und Ad-hoc" angefordert, wurde die Datei aus Schritt 1 angefordert.
3. Das neue Zertifikat wurde heruntergeladen und beim Import in Keychain Access hatte es jetzt einen privaten Schlüssel.

Nachdem ich Xcode bereinigt habe, habe ich es neu gestartet, überprüft, dass das Profil in meinem Konto sichtbar ist und ein neues Archiv erstellt. Und jetzt konnte ich das Archiv validieren.

Wenn ich jetzt versuche, ein neues "App Store and Ad Hoc" -Zertifikat anzufordern, ist diese Option für mich abgeblendet. Dies liegt vermutlich daran, dass für mein Konto das Zertifikat bereits ausgestellt wurde. In diesem Fall müssen Sie höchstwahrscheinlich Ihr vorheriges Zertifikat ungültig machen, bevor Sie ein neues ausstellen können. Aus diesem Grund empfehlen Apple) das Sichern Ihres Zertifikats. Es ist jedoch sehr wahrscheinlich, dass Sie nicht alle Produktionszertifikate ungültig machen müssen, da ich bereits eine Reihe von Zertifikaten im Profil habe.

Hoffe das hilft jemandem :)

11
Angel Naydenov

Apple hat die Art und Weise der Ad-hoc-Erstellung geändert. Jetzt können Sie mit dev cert keine Ad-hoc-Verteilungsbuilds erstellen. Sie sollten stattdessen ein Distributionszertifikat mit einem "Ad-hoc" -Bereitstellungsprofil verwenden.

7
Son Nguyen

Ich glaube, der eigentliche Grund, warum Sie auf diesem Bildschirm gelandet sind, ist der Versuch, die .ipa-Datei an Ihre Tester und Kunden zu verteilen. In Xcode 6 können Sie zum Abrufen der .ipa-Datei die alte Methode zur iPA-Generierung verwenden:

  1. Wählen Sie den Organisator in Xcode. Wählen Sie auf der Registerkarte "Archive" das Archiv aus, dessen iPA-Datei Sie generieren möchten.
  2. Klicken Sie mit der rechten Maustaste und wählen Sie die Option "Im Finder anzeigen".
  3. Sie sehen die .xarchive-Datei. Klicken Sie mit der rechten Maustaste und wählen Sie "Paketinhalt anzeigen".
  4. Sie sehen Ordner: dSYMs, Info.plist und Products.
  5. Öffnen Sie Produkte> Anwendungen und Sie sehen Ihre .app-Datei.
  6. Ziehen Sie diese .app-Datei in iTunes auf dem Mac und legen Sie sie dort ab.
  7. Ihre .app-Datei wird in iTunes unter "Meine Apps" aufgeführt.
  8. Klicken Sie mit der rechten Maustaste auf Ihre Anwendung und wählen Sie "Im Finder anzeigen".

Jetzt haben Sie die .ipa-Datei, die Sie zu Testzwecken an Ihre Tester senden können. Hoffe das hilft.

6
shah1988

Es hat Änderungen in der Art und Weise gegeben Apple verwaltet unseren privaten und öffentlichen Schlüssel. Die vorherige Methode zur Freigabe des Kontos auf zwei Rechnern war
1.Download Provisioning
2. Export/Checkout-Zertifikat

installieren Sie beide auf dem anderen Mac

jetzt müssen Sie jedoch nicht mehr Ihr gesamtes Konto exportieren.
1.XCode -> Einstellungen -> Konto (Konto auswählen) Unten links gibt es die Möglichkeit, das zu exportierenenter image description here Sie werden aufgefordert, ein Kennwort anzugeben. Geben Sie ein Kennwort ein, das beim Importieren auf ein anderes System erforderlich ist. An einem Ort Ihrer Wahl wird eine Entwicklerprofildatei heruntergeladen.

2. Laden Sie es auf einen anderen Mac herunter und klicken Sie auf Entwicklerprofil importieren , wenn Sie sehen, dass Ihr Gerät bereits über eine gültige Signaturidentität verfügt, und importieren Sie diese .developerprofile-Datei.enter image description here Geben Sie das Passwort ein, wenn Sie dazu aufgefordert werden.

hilfe bekommen von hier

4
amar

Ich habe heute das gleiche Problem bekommen und eine gute Lösung gefunden, denke ich.

Erstens gibt es etwas Ungewöhnliches:

enter image description here

das normale ist:

enter image description here

und im Schlüsselbund:

enter image description here

das normale ist:

enter image description here

dann stelle ich fest, dass mir das richtige Bereitstellungsprofil fehlt, das das richtige iOS-Verteilungszertifikat enthält.

Schließlich lautet meine Lösung: Verwenden Sie meine CertificateSigningRequest.certSigningRequest-Datei, um ein neues iOS-Verteilungszertifikat zu generieren, und verwenden Sie das neue iOS-Verteilungszertifikat, um ein neues Bereitstellungsprofil zu generieren.

Beachten Sie, dass ich das alte Zertifizierungs- und Bereitstellungsprofil nicht lösche, da mein Kollege gut damit arbeitet. Betrifft dies die Apps, die ich bereits veröffentlicht habe? Die Antwort ist NEIN . Ich ändere nur das Codesignaturzertifikat und einige wichtige Zertifikate wie Push notification certificate ist mit der App-ID verknüpft:

enter image description here

Also mach dir darüber keine Sorgen.

Hoffe, das oben ist hilfreich.

3
Allen

Ich habe es folgendermaßen gelöst:

1) in Ihrem Apple Entwicklerkonto: Erstellen Sie ein neues Produktionszertifikat. Wählen Sie die App Store- und Ad-hoc-Option

2) in Ihrem Apple Entwicklerkonto: Erstellen Sie ein neues Bereitstellungsprofil mit Ihrer aktuellen Bundle-ID und dem in Schritt 1 erstellten Zertifikat

3) in deinem xcode:

  • Wählen Sie Ihr Ziel
  • In der Registerkarte Einstellungen erstellen in der Zone Code Signing
  • In der Unterzone Code Signing Identity - Release
  • Legen Sie Ihr neues Vertriebszertifikat fest (Ad-hoc)
  • Im Bereitstellungsprofil - Legen Sie Ihr neues Bereitstellungsprofil fest (Ad-hoc).

Scheint, dass xcode 6 jetzt ein Ad-hoc-Vertriebszertifikat benötigt, um Ihre IPA zu exportieren.

enter image description here

3
shontauro

Ein Kommentator hat darauf hingewiesen, dass dies eine Lösung für mich und andere ist:

Ich habe alle erforderlichen Zertifikate gelöscht und erneut heruntergeladen, zusammen mit den Schlüsseln, die zum Generieren benötigt werden, und ich konnte diesen Fehler überwinden

2
3254523

Ich bin gerade auf dieses Problem gestoßen, nachdem ich von Xcode 5 auf 6 aktualisiert habe.

In meinem Fall hat es geklappt, ein neues Produktionszertifikat zu erstellen und dann das Verteilungsbereitstellungsprofil für meine App neu zu erstellen.

2
Ben Thielker

Ich widerrufe meine Produktionszertifikate und fordere ein anderes an, um dieses Problem zu lösen. Möglicherweise müssen Sie Ihren xcode neu starten.

2
zhangsanshi5566

Ich denke, es ist ein Fehler von Xcode. Damit es funktioniert, muss ich das aktuelle vorläufige Distributionsprofil löschen und ein neues vorläufiges Distributionsprofil von devcenter erstellen. Das funktioniert bei mir

1
Fabio

Zusätzlich habe ich festgestellt, dass Xcode Accounts ins Spiel kommen -

enter image description here

Es stellte sich heraus, dass ich über ein gültiges Vertriebszertifikat für mein persönliches Konto (mobilology) verfüge und dieses Konto vorübergehend aus dem Bereich "Konten" gelöscht habe (möglicherweise möchten Sie nur das Konto belassen, von dem aus Sie verteilen). .

Plötzlich funktionierte der Signier-/Archivierungsprozess!

1
Damo

Ich hatte auch das gleiche Problem, ich habe ein Entwicklungszertifikat anstelle von Adhoc verwendet. Das Problem wurde behoben, nachdem das Adhoc-Zertifikat verwendet wurde.

1
abhinav

Meine Lösung war Löschen Sie das einzige iOS-Produktionszertifikat, das ich verwende, und erstellen Sie es erneut. Dazu müssen Sie ein neues Bereitstellungsprofil erstellen, das das gerade erstellte Zertifikat zuweist.

dann habe ich den prozess des archivs nochmal gemacht und funktioniert!

1
benLIVE

Das hat bei mir funktioniert (Enterprise Account)

Importieren Sie das Entwicklerprofil von dem anderen Computer, der das von mir benötigte Zertifikat mit dem geheimen Schlüssel geladen hat.
Benennen Sie das App-Bundle in den Unternehmensnamen um (der Name wurde unter dem Namen des App Stores angegeben).
Ändern Sie den Teamnamen auf der Registerkarte "Allgemein" in das Team meines Unternehmens - es wurde standardmäßig mein persönliches Entwicklerkonto verwendet!

Mit diesen Änderungen konnte ich einen IPA sowohl als Ad-hoc- als auch als Unternehmens-IPA exportieren, auf Hockey Rink hochladen und auf mein Telefon herunterladen

1
Jack BeNimble

Löschen Sie Ihr ios Distribution-Zertifikat von der Entwickler-Site Apple und generieren Sie die ios Distribution mit der Datei certSignReq neu. Funktioniert bei mir immer. Ihre anderen Apps wären nicht betroffen. Zumindest in meinem Fall hat es das nie getan.

1
Ankish Jain

In meinem Fall habe ich ein neues Distributionsprofil generiert, es zu XCode hinzugefügt und dann versucht, den Build zu übermitteln. Es stellte sich heraus, dass alles, was ich tun musste, um diese Nachricht loszuwerden, ein Neustart von XCode und ein erneuter Sendeversuch ist. Hat funktioniert.

1
andrewz

Im offiziellen neuesten Xcode 6.0 geschieht dies, wenn Sie versehentlich einen Datensatz in Ihrer Berechtigungsdatei erstellt haben, der einen Schlüssel wie diesen enthält:

com.Apple.security.application-groups

Ich bin mir nicht sicher, ob Xcode es standardmäßig automatisch erstellt hat. Aber das Löschen dieses Schlüssels löste mein Problem. Ich musste keine Zertifikate neu erstellen. Das war nicht mein Problem.

1
thkeen

Ich habe dieses Problem einfach gelöst, indem ich das Bereitstellungsprofil im Entwicklerportal (in meinem Fall ein App Store-Profil) neu erstellt und über das iPhone-Konfigurationsdienstprogramm auf meinen Computer hinzugefügt habe. Ich wollte mich nicht mit den Zertifikaten anlegen und habe das erfolgreich vermieden.

Ich habe diese Fehlermeldung bemerkt, die von Xcode in meiner Konsole protokolliert wurde:

Keines der gültigen Bereitstellungsprofile erlaubte die angegebenen Berechtigungen: Anwendungs-ID, Beta-Berichte aktiv, Schlüsselbund-Zugriffsgruppen.

Nach dem Herunterladen des neuen Bereitstellungsprofils wird das fehlende beta-reports-active = true war anwesend und Xcode hat den Build signiert.

1
alleus

Schritt 1: - Melden Sie sich bei Ihrem Entwickler-Account an Apple)

Schritt 2: -Zertifikate auswählen

Schritt 3: -Löschen Sie, wenn mehr als ein Distributionszertifikat vorhanden ist

Schritt 4: Wiederholen Sie dann die Archivierung (falls der Fehler weiterhin besteht, widerrufen Sie alle Zertifikate und erstellen Sie ein neues Verteilungszertifikat und bearbeiten Sie Ihre Bereitstellungsprofile.)

In meinem Fall wurde beim Exportieren und Erstellen von AdHoc aus dem Organizer die Fehlermeldung angezeigt. Ich habe zwei Dinge getan, die das Problem möglicherweise behoben haben:

1) Exportierte das vorhandene Zertifikat, von dem behauptet wurde, dass es nicht aus meinem Schlüsselbund stammt, löschte es aus dem Schlüsselbund und importierte es erneut.

2) Ein Ad-hoc-Verteilungszertifikat erstellt und das XCode-Konto aktualisiert, um das neue Verteilungsbereitstellungsprofil zu erhalten.

Danach konnte ich genau dasselbe Archiv in einen AdHoc-Build exportieren. Ich glaube wirklich, dass es nur die Tatsache war, dass mir eine Ad-hoc-Distribution fehlte, die auf die angegebene Bundle-ID abzielte und zu Verwirrung bei XCode führte.

Follow-up: Das zuvor erstellte Archiv hat nicht funktioniert, ich musste es neu generieren. Ein Hinweis darauf war, dass beim Auswählen des Archivs und beim Exportieren eines Ad-Hoc-Builds als Standardkonto das falsche Konto für den Build ausgewählt wurde (für das Projekt war beim Archivieren des Builds kein Standardkonto ausgewählt).