web-dev-qa-db-de.com

Xcode hat versucht, passende Signatur-Assets zu finden oder zu generieren, und dies ist fehlgeschlagen

Daher versuche ich, einen Ad-hoc-Build mit einem vorhandenen Bereitstellungsprofil (das zuvor funktioniert hat) mit Xcode 6.0.1 auf Mavericks zu erstellen. Nach dem Versuch, dieses Archiv zu exportieren, wird jedoch immer wieder die folgende Fehlermeldung angezeigt:

Muss ich meine Zertifikate und Bereitstellungsprofile neu erstellen oder gibt es eine bessere Lösung? Vielen Dank!

62
liquidpenguins

Ich stehe diesem Problem auch als Teammitglied gegenüber. Die Warnung "Sie dürfen diesen Vorgang nicht ausführen" lässt mich vermuten, dass XCode die hier definierten Rollen strenger durchsetzt: https://developer.Apple.com/programs/roles/

Obwohl ich Zugriff auf die Signatur-Assets (Zertifikat und Bereitstellungsprofil) habe, kann ich sie in XCode nicht angeben. Versuchen Sie, Ihre Rolle auf Team Admin zu aktualisieren.

Aktualisiert am 29.09.2014: Nach umfangreichen Recherchen habe ich festgestellt, dass es möglich ist, die .ipa-Datei mit xcodebuild über die Befehlszeile auch als zu generieren "Teammitglied" -Rolle mit den folgenden Funktionen:

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

gutschrift auf 1

Hinweis: Wie im verlinkten Artikel erwähnt, ist der Name des "Bereitstellungsprofils" der Name, der im Feld "Name" des Zertifikats angegeben ist (sichtbar unter developer.Apple.com).

Sie können den Prozess in xcode automatisieren, indem Sie den Aufruf in Ihr Projekterstellungsskript aufnehmen.

47
Tico Ballagas

Versuchen Sie, Ihre Konsole zu öffnen und in Ihren Xcode-Projektordner zu wechseln. Geben Sie dann die folgenden Befehle ein:

um dein Projekt zu säubern

xcodebuild clean -project YourProjectName.xcodeproj -configuration Release -alltargets

um deine App zu erstellen und zu archivieren

xcodebuild archive -project YourProjectName.xcodeproj -scheme YourSchemaName -archivePath YourProjectName.xcarchive

Sie finden YourSchemaName einfach in Xcode> Produkt> Schema> Schema bearbeiten ...

schließlich erstellen Sie Ihre App .ipa-Datei

xcodebuild -exportArchive -archivePath YourProjectName.xcarchive -exportPath YourProjectName -exportFormat ipa -exportProvisioningProfile 'Your Provisioning Profile Name'

Um Name Ihres Bereitstellungsprofils zu suchen, melden Sie sich bitte bei Apple Developer Member Center) an und gehen Sie zu Zertifikate, Kennungen und Profile. Klicken Sie dann auf - Bereitstellungsprofile für iOS-Apps Dort finden Sie den Namen Ihres Bereitstellungsprofils.

Wenn dies nicht funktioniert, versuchen Sie, einfaches Anführungszeichen durch doppeltes Anführungszeichen ('mit ") zu ersetzen.

Sie finden die .ipa-Datei in Ihrem Xcode-Projektordner.

Danach können Sie Ihre .ipa-Datei in iTunes öffnen und auf Ihrem iOS-Gerät installieren.

Ich hoffe, es hilft!

11
kammodze

Was passiert: Xcode muss Build mit gültigem Zertifikat signieren. Es wird versucht, einen zu finden, der kein Glück hat. Warum? Denn vor Xcode6 durften Sie AdHoc-Builds mit Ihrem Entwicklerzertifikat signieren. Und Sie konnten, weil Sie einen privaten Schlüssel dafür haben. Jetzt müssen Sie Ad-hoc-Builds mit Produktionszertifikat signieren. Und Sie haben keinen privaten Schlüssel dafür.

Daher sind Schritte erforderlich, um das Erstellen von Xcode6 zu ermöglichen ( https://stackoverflow.com/a/26061067/1918302 ):

  1. Holen Sie sich einen privaten Schlüssel für Ihr Produktionszertifikat. (Sie müssen es aus dem Mac-Schlüsselbund exportieren und in Ihren Schlüsselbund importieren. OR Aktuelles und neues Produktionszertifikat erstellen widerrufen. Während der Erstellung erhalten Sie eines. Zitiert hier aus dem obigen Link:

    [~ # ~] Vorsicht [~ # ~] : Durch das Widerrufen eines Unternehmensverteilungszertifikats werden alle Apps ungültig, die mit diesem Zertifikat signiert und bereitgestellt wurden ( offizielle Info )).

  2. Erstellen Sie ein spezielles XC Ad Hoc: Verteilungsprofil (wenn Sie in Ihrem Team eine Administratorrolle bei developer.Apple.com haben - Xcode erledigt dies für Sie) .

  3. Legen Sie das Bereitstellungsprofil im Ziel Ihres Projekts fest -> Build-Einstellungen -> Codesignatur, die in Schritt 2 erstellt wurde.

Getan!

ODER wenn die oben genannten nicht erreichbar sind, können Sie einen Build mit Befehlszeilentools erstellen: https://stackoverflow.com/a/25979784/1918302 . Aber das scheint mir eine Sicherheitslücke zu sein und ich glaube nicht, dass dies für lange Zeit funktionieren wird.

7
bucherland

Für mich stellte sich heraus, dass ich die Eigenschaft des Bereitstellungsprofils für das Projekt nicht gemäß diese Antwort festgelegt hatte.

2
devios1

Wir konnten dieses Problem umgehen, indem einfach einer der Administratoren das "XC Ad Hoc: Distribution" -Profil aus dem Entwicklungszentrum herunterlud und es dann an das "Teammitglied" sendete, das es erstellen wollte, und es von ihm manuell importieren ließ . Da er bereits das Zertifikat hatte, war dies alles, was er brauchte, um den Build durchführen zu können und diesen Fehler nicht mehr zu bekommen. Bestehende Antworten hier sind richtig, aber dies ist für viele von uns eine reibungslose Methode, um das letzte Puzzleteil zu erhalten.

Zusammenfassend benötigen Sie dieses Profil nd das Zertifikat mit einem privaten Schlüssel in Ihrem Schlüsselbund.

2
Clay Fowler

Ich mein Fall, das Problem war App ID. Natürlich gab es die App in meinem Mitgliederkonto. Das Problem befand sich im Bereich "Funktionen". Einige der Funktionen hatten das Problem nicht behoben, aber der Build war erfolgreich. Dies führt dazu, dass meine App-ID im Mitgliedercenter und Xcode unterschiedliche Funktionseinstellungen haben.

Das Entfernen dieser Dissonanz hat mein Problem gelöst. Überprüfen Sie es zweimal, wenn Sie ein ähnliches Problem haben.

1
Dima Deplov

Ich habe diesen Fehler auch erhalten, weil das Entwicklerzertifikat für den Computer, auf dem ich baue, abgelaufen ist.

Selbst nach der Erneuerung dieses Zertifikats konnte ich die Build for App Store-Version nicht exportieren. Auch nachdem Sie die Anweisungen in der akzeptierten Antwort befolgt und dieses Entwicklerkonto auf einen Administrator aktualisiert haben.

Da das Archiv erstellt wurde, während das Entwicklerzertifikat abgelaufen war, konnte der Entwickler mit dem Verteilungsprofil kein Codesign erstellen. Nach der Erneuerung des Entwicklerzertifikats musste das Archiv neu erstellt werden, damit dieser Computer das (bereits installierte und funktionsfähige) Distributionszertifikat verwenden konnte, um das neue Archiv mit einem Codesign zu versehen und in den App Store hochzuladen.

Teilen für den Fall, dass jemand anderes diesen Edge-Fall trifft.

0
user5684435

Ihr verteiltes Konto ist kein Match-Team.

Sie müssen Ihr Konto unter xcodeproj-> Identität-> Team -> Konto hinzufügen definieren

0
kingalex

Sie müssen Ihr Konto in Xcode-> Einstellungen-> Konto definieren. Es scheint, dass Sie eine Apple-ID definiert haben, die nicht auf IOS Entwicklerkonto zugreifen darf.

Versuchen Sie, sich mit diesem Benutzer in https://developer.Apple.com/devcenter/ios/index.action anzumelden, und prüfen Sie, ob dieser Benutzer in einem IOS) zulässig ist Entwicklerprogramm.

Dies kann passieren, wenn Sie sich mit einer iTunes-Verbindung angemeldet haben. Sie sind verschiedene Konten.

Ich hoffe das hilft!

0
Eva Madrazo