In Xcode 4 heißt es, dass <meine App> auf dem Zielgerät ausgeführt wurde - nichts passiert

223

Die App wird auf meinem Gerät weder installiert noch ausgeführt. Alle Bereitstellungsprofile sind aktuell. Ich habe bereits versucht, sie zu löschen und neu zu installieren.

Die Statusleiste zeigt an, dass Xcode mein Projekt erstellt, dann heißt es, dass mein Projekt ausgeführt wird, und dann heißt es "Fertig ausgeführt". Während des gesamten Zeitraums bleibt der iPod-Bildschirm schwarz. Der iPod wird im Organizer erkannt und ich sehe keine Fehler in der Konfiguration. Vor ein paar Tagen hat mit Xcode 3 alles perfekt funktioniert.

Es funktioniert nicht auf dem Simulator, aber es kann wichtig sein zu beachten, dass es im Simulator anscheinend bei "Anhängen an" hängen bleibt und der Simulator sich weigert zu starten.

D-Nizza
quelle
1
Wenn Sie ein brandneues Projekt mit einer der Xcode-Vorlagen erstellen und versuchen, es entweder im Simulator oder auf dem Gerät auszuführen, funktioniert es dann? Ich versuche festzustellen, ob die Installation / Konfiguration von xcode fehlerhaft ist oder ob etwas in der App, nach dem Sie fragen, das Verhalten beeinflusst.
Kennbrodhagen
2
Erstellt eine neue Projektvorlage und es hat funktioniert. Jetzt wissen wir also, dass in meinem Projekt etwas falsch konfiguriert sein muss.
D-Nice
D-Nice, hast du das jemals gelöst? Ich habe genau das gleiche Problem mit meinem Spiel und kann es nicht für mein Leben lösen.
Adam Johnson

Antworten:

268

Für diejenigen, die dies in Bezug auf Xcode 4.2 lesen und versuchen, auf einem früheren Gerät (z. B. iPhone 3G, 2G, iPod 1. Generation usw.) zu laufen, habe ich eine andere Lösung. Neue Projekte, die standardmäßig in Xcode 4.2 erstellt wurden, geben 'armv7' in den 'Erforderlichen Gerätefunktionen' an. Sie müssen dies entfernen, wenn Sie Geräte unterstützen möchten, auf denen armv6 ausgeführt wird (z. B. das iPhone 3G).

Geben Sie hier die Bildbeschreibung ein

Löschen Sie armv7 aus den 'Erforderlichen Gerätefunktionen' in IhrerProjectName-Info.plist

Möglicherweise müssen Sie auch die Build-Einstellungen ändern, um mit armv6 anstelle von armv7 zu kompilieren.

Dies ist die Standardeinstellung:

Geben Sie hier die Bildbeschreibung ein

Doppelklicken Sie auf 'Standard (armv7)', um einen weiteren hinzuzufügen, klicken Sie dann im Popup auf das '+' und geben Sie 'armv6' ein:

Geben Sie hier die Bildbeschreibung ein

Klicken Sie auf Fertig und es sollte so aussehen:

Geben Sie hier die Bildbeschreibung ein

MattyG
quelle
1
Bingo: Ich musste die beiden beschriebenen Schritte ausführen, um auf meinem alten iPhone 3G ordnungsgemäß zu funktionieren. Danke MattyG!
Ariel Malka
1
Tausend Dank! Ich würde dir 10 Stimmen geben, wenn ich könnte. Ich habe alle Szenarien auf dieser Seite ohne Glück durchlaufen. Irgendwie muss dieser Wert geändert worden sein, als ich auf XCode 4.3 aktualisiert habe.
IcyBlueRose
Vielen Dank für Ihre Bemühungen, das Verfahren im Detail zu erläutern.
Alekhine
4
Danke auch von mir! Viele Leute haben vorgeschlagen, 'armv6' hinzuzufügen, aber das Entfernen von armv7 ist der Trick!
Harry Wood
1
"Löschen Sie armv7 aus den 'Erforderlichen Gerätefunktionen' in IhrerProjectName-Info.plist" -> Danke
Oded Regev
43

Ich hatte gerade dieses Problem, aber für mich war es, weil ich in meinen Architekturen nur armv7 angegeben habe, aber das 3G ist armv6. Stellen Sie sicher, dass Sie beide haben.

axiixc
quelle
Das war die Hauptursache für mich. So leicht, es zu vergessen. Vielen Dank.
Lukasz
5
Informationen zum Hinzufügen der Option "armv6" finden Sie hier: stackoverflow.com/questions/7488657/…
pauloya
Mein älterer iPod Touch muss auch armv6 sein, da dies auch funktioniert hat.
Programm
Ja, ich bin mir ziemlich sicher, dass das ursprüngliche iPhone, 3G und die ersten beiden iPod touch armv6 waren.
Axiixc
21

Ich hatte dieses Problem und es stellte sich heraus, dass XCode das Bereitstellungsziel standardmäßig auf 4.3 eingestellt hatte, während mein Telefon 4.2.1 ist. Das Ändern des Bereitstellungsziels auf 4.0 schien das Problem zu beheben.

Jeremy Flores
quelle
Genau das, wonach ich gesucht habe.
Flucht
Ich hatte dieses Problem beim Festlegen des Bereitstellungsziels auf 5.1, als mein Gerät nur bis 5.0.1 war - Prost Kumpel +1
theiOSDude
12

Stellen Sie nach dem Hinzufügen von "armv6" zu den Projekt- und Zielarchitekturen sicher, dass in Ihrem Abschnitt "Erforderliche Gerätefunktionen" Ihrer info.plist kein "armv7" vorhanden ist. Wenn ja, entfernen Sie es einfach und es sollte funktionieren!

Johann
quelle
Ja, das ist der Grund für meinen Fall. Keine Ahnung, wie die "Erforderlichen Gerätefunktionen" von armv7 in die Liste aufgenommen wurden. Vielen Dank!
GeneCode
11

Gleiches Problem hier mit der App nicht auf dem Gerät ausgeführt. Das Löschen der App vom Gerät hat nicht geholfen. Projekt -> Reinigen dann Projekt -> Erneut ausführen hat auch nicht geholfen. Es stellte sich heraus, dass das Beenden und Neustarten von Xcode 4 das Problem löste.

SPitBalls.com
quelle
9

Ich hatte das auch gerade. Ich hatte info.plist einen Abschnitt UIRequiredDeviceCapabilities hinzugefügt, für den ein Gamekit erforderlich war, und die App wurde nicht auf ein iPhone 3G mit iOS 4.2 kopiert. Die erforderliche Fähigkeit entfernt, alles ist gut.

Graham Perks
quelle
Wie sollen Sie dann Apps testen, für die ein Gamekit auf dem Gerät selbst erforderlich ist?
Rob
Sie erhalten GameCenter weiterhin, ohne dass Ihre info.plist angibt, dass Sie ein Gerät benötigen, auf dem es vorhanden ist. Jedes Gerät, auf dem 4.2 ausgeführt wird, verfügt über GameCenter, sodass die zusätzliche info.plist "Ich brauche es!" Nicht erforderlich ist.
Graham Perks
6

Versuchen Sie, die App auf dem Gerät zu löschen (genau wie bei Ihrer üblichen App-Deinstallation) und sie erneut über Xcode auszuführen. Hat mir bei dem gleichen Problem geholfen, abgesehen davon, dass der Simulator nicht funktioniert.

Tomek Kopczuk
quelle
Es gibt keine Spur mehr von der App auf dem Gerät. Ich denke nicht mehr, dass dies ein Bereitstellungsproblem ist ... es gibt etwas, das in meinem Projekt beschädigt wurde, aber ich habe keine Ahnung, was es sein könnte.
D-Nice
6

Mein Fall: Ich habe fälschlicherweise Folgendes eingestellt: Erforderliche Gerätefunktionen -> Beschleunigungsmesser auf NEIN (in Info.plist). Ich muss es nur auf JA zurücksetzen

Außerdem: Stellen Sie sicher, dass die erforderlichen Gerätefunktionen vom richtigen Typ sind: z. B. Boolean oder String. Der falsche Typ führt immer dazu, dass der Test fehlschlägt und die App nicht geladen wird.

Casey
quelle
4

Für diejenigen, die immer noch zappeln, war eine andere Sache, die ich tun musste, den Namen des Produkts meines Ziels für Debug- und Release-Konfigurationen gleich zu machen. Es hatte die Debug-Version "ausgeführt", die ich nicht erstellt hatte.

Luke
quelle
4

Das Hinzufügen der armv6-Architektur hat dies für mich behoben.

rotes Auto
quelle
das war es für mich; Die neue Version von Xcode beschließt, armv6 aus der Build-Einstellung 'Architekturen' zu entfernen, sodass Sie es manuell wieder hinzufügen müssen
2

Passiert mir manchmal auch. Durch Reinigen (Produktmenü -> Reinigen) und Ausführen (Projektmenü -> Ausführen) wird dies immer behoben.

Das Schwarze
quelle
Vielen Dank! Das passiert oft. Jedes Mal probiere ich etwas Neues aus! Ist das ein Fehler in Xcode?
Namratha
2

Ich hatte das gleiche Problem: Ich habe ein Projekt von xcode3 auf xcode4 migriert, und nach dem Erstellen der App wollte xcode die App nicht auf meinem Telefon installieren und starten.

Meine Lösung (die für mich funktioniert hat) ist:

  • Bearbeiten Sie Ihr Schema (das ausgeführt werden soll)
  • Wählen Sie in der Liste links "Xyz.app ausführen" aus.
  • Unter der Registerkarte "Info" hatte ich bei "Ausführbar" die Option ".app" ausgewählt. Ändern Sie dies, indem Sie zu Ihrem Build-Verzeichnis navigieren und Ihre App auswählen.

Hat für mich funktioniert und kann von nun an: 'Produkt -> Aktion ausführen -> Ohne Build ausführen' zum Ausführen des neuesten Builds verwenden. Dies ist schneller als das einfache Drücken von Ausführen, da keine Build-Aktionen ausgeführt werden.

bxantus
quelle
Gibt es kein Build-Verzeichnis für meins? seltsam.
Sam Jarman
1

Starten Sie das Gerät einfach neu. Mach ein sauberes Projekt. Löschen Sie die App vom Gerät und erstellen Sie sie neu.

Alex Terente
quelle
0

Die Build-Einstellungen waren für Projekt und Ziele unterschiedlich. Ich drücke in beiden Abschnitten einfach suppr auf Build Products Path und Intermediate Build Files Path und es hat mein Problem gelöst.

GeorgioA
quelle
0

Ich hatte das gleiche Problem mit meinem Spielprojekt mit Cocos2D. "Hallo Welt" aus der Vorlage hat einwandfrei funktioniert, mein Projekt hat im Simulator einwandfrei funktioniert, aber die Ausführung auf dem Gerät ist mit der Meldung "Ausführung abgeschlossen" fehlgeschlagen.

Ich habe Info.plist in meinem Projekt durch die erste aus der Vorlage ersetzt und das hat bei mir funktioniert!

Rudyryk
quelle
0

Ich habe dies zweimal mit zwei verschiedenen Apps erlebt, als ich auf die neueste Xcode-Version umgestiegen bin. Das erste Mal funktionierte das Kompilieren der App mit dem GCC LLVM-Compiler. Beim zweiten Mal wurde die armv6-Architektur als unterstützte Architektur wieder hinzugefügt, da sie entfernt wurde, als Xcode das Projekt automatisch aktualisierte.

Halle
quelle
0

Ich habe dieses Problem gelöst, indem ich "Beschleunigungsmesser" in meiner Info.plist von "NEIN" auf "JA" geändert habe.

Laut der Key Reference der Information Property List von Apple können Sie die Einstellung "Beschleunigungsmesser" vollständig entfernen, wenn "Ihre Anwendung nur Änderungen der Geräteorientierung erkennt".

Codeperson
quelle
Ihre App unterstützt Beschleunigungsmesser?
Mac
0

Meine Lösung bestand darin UIInterfaceOrientationPortrait, das UISupportedInterfaceOrientationsArray in Info.plist zu erweitern, obwohl meine App kein Hochformat unterstützt.

Morgenlos
quelle
0

Ein Feld namens "Anwendung erfordert iPhone-Umgebung" hatte es irgendwie in meine Liste geschafft. Ich habe es entfernt und voila! Es lief auf meinem iPod.

Namratha
quelle
0

In meiner Info.plist wurde die Zielmitgliedschaft auf mein Build-Ziel festgelegt. Das Entfernen aus der Zielmitgliedschaft löste das Problem.

RohinNZ
quelle
0

Ich habe einen alternativen Namen für Info.plist verwendet, aber die Info.plist FileBuild-Einstellung für mein Ziel nicht richtig festgelegt . Ich habe dies entdeckt, indem ich mir das Anwendungspaket angesehen und festgestellt habe, dass es keine Info.plist enthält.

Ben Flynn
quelle
0

Stellen Sie sicher, dass die Bereitstellungszielversion <= die iOS-Version auf Ihrem Gerät ist. So habe ich dieses Problem gelöst.

d4n13l
quelle
0

Ich hatte jetzt ungefähr 45 Minuten lang das gleiche Problem. Die Reinigung hat nicht geholfen, die Neuerstellung des Projekts hat nicht geholfen, die Arm-Version hat nicht geholfen. Ich hatte einige Nachrichten "Konnte nicht mit iTunes synchronisieren" geöffnet, die ich vorher nicht gesehen hatte. Das Klicken auf OK schien das Problem behoben zu haben :(

John Fawcett
quelle
0

XCode wurde erstellt, ausgeführt und beendet, aber die App konnte nicht bereitgestellt werden und wurde nicht einmal auf das Gerät kopiert.

Tatsächlich sollte im XCode-Projekt etwas defekt sein. Der beste Schritt ist, ein neues Projekt von Grund auf neu zu erstellen. Vergessen Sie nicht, die Unterstützung von armv6 hinzuzufügen, wie in einem vorherigen Beitrag angegeben.

Es funktioniert gut für mich!

Claude COULOMBE
quelle
0

Dies geschah beim Versuch, eine watchOS-App auf einem Gerät auszuführen, da die watchOS-Version meiner Apple Watch höher war als mein derzeit installierter Xcode. Ich habe auf den neuesten Xcode aktualisiert (was auch ein Upgrade auf das neueste MacOS erforderte), und danach lief es einwandfrei .

Nickjwallin
quelle