Ich habe an einem iPhone-Projekt mit iOS 4.0 gearbeitet. Ich habe gerade Xcode 3.2.4 mit iOS SDK 4.1 heruntergeladen, damit ich mit dem aktualisierten iOS arbeiten kann. Beim Öffnen des Projekts im udpated Xcode habe ich festgestellt, dass das Ziel 'Base SDK Missing' lautete. Ich habe das behoben, indem ich die Anweisungen hier befolgt habe.
Wenn ich nun versuche, eine beliebige Version von iOS zu erstellen, erhalte ich diese Fehlermeldung (mit der entsprechenden Version, auf die im Fehlertext verwiesen wird):
CodeSign-Fehler: Für den Produkttyp 'Application' im SDK 'Device - iOS 4.1' ist eine Codesignatur erforderlich.
Ich habe das von Xcode erstellte Team-Provisioning-Profil installiert, dieses hat mein Zertifikat und das für die Codesignierung ausgewählte Entity ist "iPhone Developer: Aaron Milam".
Irgendwelche Ideen, was ich hier vermissen könnte?
Dies geschieht, wenn Xcode Ihr Zertifikat nicht erkennt.
Es ist nur ein Schmerz im Arsch, es zu lösen, es gibt viele Möglichkeiten, um Ihnen zu helfen.
Aber das erste, was Sie versuchen sollten, ist das Entfernen der auf Ihrem Gerät befindlichen Bereitstellung im Register "Fenster" => Organizer. Fügen Sie sie dann erneut hinzu (laden Sie sie erneut von der Apple-Website herunter). Und versuche erneut zu kompilieren.
Haben Sie im Projekt-Info-Fenster übrigens die "Code-Signatur-Identität" geprüft?
Viel Glück.
Stellen Sie sicher, dass Sie in der Zeile " any iOS SDK " ein Codezeichen eingeben und nicht "Debug/Distribution/Release".
Genau das habe ich gemacht:
Code-Signaturidentität -> Kein Code-Zeichen
* Debug -> kein Code-Zeichen
** jedes iOS-SDK -> [mein Entwicklerprofil]
* Verteilung -> nicht codieren
** ein beliebiges iOS-SDK -> [mein AppStore-Profil]
* Freigeben -> kein Code-Zeichen
** ein beliebiges iOS-SDK -> [mein AdHoc-Profil]
Wenn ich meine Profile eine Stufe höher lege (bei Debug/Ditribution/Release), funktioniert es aus irgendeinem Grund nicht (Bug?).
Hoffe es hilft einigen von uns!
Ich liebe Stack Overflow:
Mir wurde klar, dass es manchmal nicht genug ist, zu spezifisch zu sein, da wir möglicherweise eine andere Xcode-Version haben. Ich habe selbst zwei Xcode-Versionen auf demselben Mac Pro. Daher möchte ich hier eine allgemeine Anweisung geben, von der ich hoffe, dass sie für alle Xcode-Versionen geeignet ist:
Meine 2 Versionen sind xcode 3.2.6 und 4.0. Sie müssen (auch Google für die Einstellungen) Ihren xcode BUILD SETTINGS und seine CODE-SIGNIERUNG finden. Unter CODE SIGNING haben Sie CODE SIGN IDENTITY https://developer.Apple.com/ios/manage/overview/index.action - Befolgen Sie diese Anweisungen von Apple "Holen Sie sich Ihre Anwendung unter iOS mit dem Development Provisioning Assistant") Wenn Sie eine Liste mit Bezeichnern haben Wählen Sie einfach einen gültigen aus und führen Sie Ihren Xcode erneut aus. Es wird klappen!
3.2.6 spezifisch: Klicken Sie in Ihrem Scode-Fenster auf Projekt -> Projekteinstellungen -> Erstellen (Registerkarte) -> es gibt einen Bildlauf nach unten, da die Liste lang ist. Stellen Sie sicher, dass Sie nach unten scrollen, um den Abschnitt CODE SIGNING zu finden
4.0 spezifisch: Klicken Sie in Ihrem Xcode-Fenster auf Ihre Projektdatei ganz links in der Spalte -> klicken Sie dann auf die Ziel-App -> CODE SIGNING suchen und weisen Sie einen IDENTIFIER zu. Es sollte für dich funktionieren.
Erledigt!
Wenn Sie davon ausgehen, dass alle Zertifikate ordnungsgemäß installiert sind, müssen Sie in den Einstellungen für das aktive Ziel nicht die Codesignaturidentität zusammen mit den Projekteinstellungen angeben. Ändern Sie diese in iPhone Developer (Xcode wählt abhängig von der Übereinstimmung der App-ID das richtige Profil aus).
Wechseln Sie in Xcode von Simulator zu Gerät (in der Dropdown-Liste oben im Xcode-Fenster), sodass das Ziel für die Anwendungsbereitstellung das Gerät ist.
Die Standard-ID, die eine Platzhalter-ID ist, ist wie ein Catch-All-iD, wenn sie in Code Signing zugeordnet wird (wenn Sie Beispieldateien zum Erstellen verwenden, werden sie offensichtlich keine com.coolapps.appfile-Importe haben. In diesem Fall ohne ' Team-Provisioning-Profil ", Ihr Build würde fehlschlagen. Sie sollten dies also in Ihrem festlegen
Xcode -> Projekt -> Projekteinstellungen bearbeiten -> Erstellen (Registerkarte) -> Code Signing Identity (Kopfzeile) -> Beliebiges iOS (Änderung von Beliebiger iOS - Simulator) -> (Wählen Sie als Wert "iPhone Developer" aus, und der Standardwert wird angezeigt Profil für die Bereitstellung von Wildcard-Entwicklungen (Team Provisioning Profile: *)
und auch (SEHR WICHTIG)
Führen Sie die Schritte für einen Anfänger aus unter: http://codevelle.wordpress.com/2010/12/21/moving-from-ios-simulator-to-the-ios-device-mooth-without-code- Vorzeichenfehler/
Stellen Sie sicher, dass Sie die Bereitstellungsprofile ordnungsgemäß erstellt haben. Wenn dies der Fall ist, müssen Sie einen öffentlichen Schlüssel, einen privaten Schlüssel und ein Zertifikat im Schlüsselbundzugriff haben.
XCode 3.2.4 wird mit der automatischen Gerätebereitstellung geliefert. Sie müssen sich also nur bei Ihrem Entwicklerkonto anmelden. Dort werden alle gültigen Profile heruntergeladen.
Wenn Sie alles haben, was Sie im Schlüsselbund und in heruntergeladenen Profilen benötigen ... Wenn Sie sich für iPhone Developer: Aaron Milam 'entscheiden. Vergewissern Sie sich, dass Sie in den Build-Einstellungen ... (.) oben Konfiguration (oben links in Target-> Build) ausgewählt haben, für die Sie Build erstellen möchten. Sie können jedoch All-Konfiguration vornehmen, um Änderungen in allen verfügbaren Konfigurationen vorzunehmen, z. B. Debuggen. Freigabe etc.
Zusammengefasste Form einer Antwort auf Xcode schlägt mit "Code Signing" fehl. Fehler
project.pbxproj
-Dateien können so zusammengefügt werden, dass zwei CODE_SIGN_IDENTITY
-Zeilen eingefügt werden können. Durch das Löschen eines davon wird das Problem normalerweise behoben.
Ich habe ein einfaches Skript erstellt, um dieses Problem zu diagnostizieren. Dieses kann hier gefunden werden: https://Gist.github.com/4339226
Eine vollständige Antwort finden Sie hier .
Nachdem ich alle obigen Antworten ausprobiert hatte, und alles, was mir sonst aus Xcode 4.6 heraus einfiel, korrigierte ich dies mit den folgenden Schritten:
CODE_SIGN_IDENTITY = "iPhone Developer: Joe Smith (555NN555)"; "CODE_SIGN_IDENTY[sdk=iphoneos*]" = "iPhone Developer: Joe Smith (555NN555)";
Ich habe 2 Ziele mit einem solchen Wert und 2 Ziele mit gefunden
CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTY[sdk=iphoneos*]" = "";
Ich habe das erste Zeilenpaar über das letzte Zeilenpaar für alle Fälle kopiert, in denen das letzte Paar leer war.
Ich habe dann Xcode neu gestartet und es funktioniert jetzt gut.
Wenn Sie diese 4 Schritte ausführen, werden meine Probleme immer gelöst.
Eine andere Möglichkeit - Stellen Sie beim Erstellen für das Archiv sicher, dass die Archivauswahl in Ihrem Schema auf Verteilung festgelegt ist und nicht auf Freigeben.
Gehen Sie zu Produkt -> Bearbeitungsschema. Es erscheint ein neuer Dialog.
Wählen Sie links Archiv aus. Stellen Sie sicher, dass die Build-Konfiguration Distribution ist.
Wie bereits erwähnt, wenn Sie Ihre Anwendung nicht mit einem Code signieren möchten, können Sie CODE_SIGNING_REQUIRED
auf NO
setzen. Hier ist eine Methode, um dies ohne Projekt/Dateien zu tun Änderung:
Datei erstellen NoCodeSign.xcconfig :
CODE_SIGNING_REQUIRED = NO
Setzen Sie die Umgebungsvariable XCODE_XCCONFIG_FILE
auf den Pfad zu dieser Datei:
export XCODE_CXCONFIG_FILE=/path/to/NoCodeSign.xcconfig
Jetzt können Sie Ihre Anwendung ohne Codesignatur erstellen.
Ich verwende Xcode 4.3.2 und mein Problem war, dass sich dort ein Ordner in einem anderen Ordner mit demselben Namen befand, z. B. meinOrdner/meinOrdner /.
Die Lösung bestand darin, den Namen des zweiten Ordners zu ändern, z. B. myFolder/_myFolder, und das Problem wurde gelöst.
Ich hoffe, das kann jemandem helfen.
In der Datei /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/SDKSettings.plist
Ändern Sie das CODE_SIGNING_REQUIRED YES
zu
CODE_SIGNING_REQUIRED NO
Starten Sie Xcode neu
Haben Sie die Firmware-Version des iPhone, auf dem Sie testen, aktualisiert?
Möglicherweise sind Datum und Uhrzeit Ihres Mac nicht korrekt. Korrigiere sie einfach.