webentwicklung-frage-antwort-db.com.de

Beim Ausführen ist ein Fehler aufgetreten (Domain = LaunchServicesError, Code = 0)

Beim Versuch, meine App im iOS-Simulator mit Xcode 6 zu starten, ist eine Fehlermeldung (Domain = LaunchServicesError, Code = 0) aufgetreten. Ich habe in Google nach einer Lösung gesucht, aber nichts Praktisches gefunden.

Was bedeutet dieser Fehler?

69
Liran Revivo

Dieser Fehler weist darauf hin, dass bei der Installation ein Problem aufgetreten ist. Leider druckt Xcode den Inhalt der Fehlermeldung nicht aus, um einen besseren Einblick zu erhalten. Die restlichen Fehlerdetails finden Sie jedoch in ~/Library/Logs/CoreSimulator/CoreSimulator.log. Weitere Informationen zum Problem finden Sie auch im Systemprotokoll des simulierten Geräts (~/Library/Logs/CoreSimulator/[Geräte-UDID] /system.log). Suchen Sie nach Nachrichten von installd, die zum Zeitpunkt des Fehlers gesendet wurden.

Häufige Ursachen hierfür sind Bundles, denen eine Info.plist fehlt, fehlende Schlüssel in der Info.plist Ihres Bundles oder Werte für einige Schlüssel in der Info.plist, die nicht zulässig sind.

Wenn die Info.plist Ihrer App kein gültiges CFBundleVersion-Schlüssel/Wert-Paar enthält, wird Ihre App möglicherweise beim ersten Mal korrekt installiert, aber nicht aktualisiert. Viele Benutzer scheinen dies zu umgehen, indem sie nach jeder Installation ein "Zurücksetzen von Inhalten und Einstellungen" durchführen. Es ist jedoch besser, die Hauptursache durch Festlegen einer geeigneten CFBundleVersion in der Info.plist zu beheben. Ich glaube, iOS 8.2 gibt in diesem Fall einen Fehler bei der ersten Installation zurück und nicht nur bei Updates. Hoffentlich wird dieses Problem jetzt offensichtlicher.

Benutzer mit Basisverzeichnissen auf Dateisystemen, die keine festen Verknüpfungen unterstützen (z. B. Netzwerkbasisverzeichnisse über AFP, SMB oder einige NFS-Server), können auch Probleme im Zusammenhang mit festen Verknüpfungen haben. In diesem Fall sollten Sie auf Ihrem lokalen HFS + -Dateisystem einen Pfad für die Simulatorentwicklung erstellen (z. B .:/var/simulator/[user]) und einen Symlink zu diesem Pfad unter ~/Library/Developer/CoreSimulator erstellen. Dieses spezielle Problem wurde in einer der iOS 8.2-Betas behoben.

In einem anderen Fall war Build & Run beim ersten Versuch immer erfolgreich, aber nachfolgende Versuche scheiterten manchmal an einer geänderten Info.plist (z. B. weil die Build-Systemeinstellungen von jemandem dazu führen, dass CFBundleVersion bei jeder Iteration anders ist). Sie können in der Regel wiederherstellen, indem Sie entweder die installierte App löschen (indem Sie auf dem Startbildschirm lange drücken oder auf xcrun simctl uninstall [Device UDID] [app identifier]) oder Löschen des Geräts in den Standardzustand. Um das Gerät zu löschen, führen Sie xcrun simctl erase [Device UDID] vom Terminal oder wähle Erase Contents & Settings aus dem iOS Simulator-Menü. Dieses spezielle Problem wurde in einer der iOS 8.2-Betas behoben.

Eine neuere Instanz dieses Problems tritt für Benutzer von Xcode 6.2 auf. Wenn Ihre App eine WatchKit-App-Erweiterung enthält, kann diese nicht auf Versionen der iOS Simulator-Laufzeit installiert werden, die älter als iOS 8.2 sind. Um dieses Problem zu umgehen, müssen Sie die App-Erweiterung manuell für die Installation deaktivieren, wenn Sie mit iOS 8.1 und früheren Laufzeiten testen möchten.

Wenn Sie weitere Hilfe benötigen, geben Sie die gesamte Fehlermeldung von CoreSimulator.log sowie alle Meldungen von installd und CoreSimulatorBridge an, die ungefähr zur gleichen Zeit in ~/Library/Logs/CoreSimulator/[Geräte-UDID] /system.log als angezeigt werden das wird das zugrunde liegende Problem aufdecken.

Enthält Ihr Projekt ein Widget oder eine Erweiterung? In diesem Fall liegt das Problem möglicherweise in der Paket-ID Ihres Widgets/Ihrer Erweiterung. Es sollte dasselbe sein wie das Hauptziel, an das ein Punkt und eine zusätzliche Zeichenfolge angehängt sind. Also zum Beispiel:

Hauptziel: com.mycompany.myapp

Widget sollte sein: com.mycompany.myapp.widget

41
Rachid Finge Jr

Ich habe es durch Zurücksetzen des Simulators behoben:

iOS Simulator> Inhalte und Einstellungen zurücksetzen ...

39
Chris Long

Da jeder schreibt, was sie durchgemacht hat und wie sie das ihre genaue Problem behoben hat, ist dies möglicherweise nicht hilfreich.

Das Problem ist, dass es unterschiedliche Ursachen für die gleiche Fehlermeldung gibt. Die richtige Lösung besteht darin, ~/Library/Logs/CoreSimulator/CoreSimulator.log Zu öffnen und dort nach der letzten Meldung zu suchen. Diese Nachricht gibt Ihnen einen guten Hinweis und gibt Ihnen den richtigen Weg zur Lösung Ihres Problems (manchmal sind es Bündel-IDs, manchmal fehlt ein Attribut oder ein zusätzliches Attribut in der Info.plist, aber Sie erhalten immer einen guten, aussagekräftigen Hinweis).

Auf diese Weise können Sie das Problem eingrenzen und es schließlich beheben.

Viel Glück und harte Nerven mit Xcode.)

Z.

25
Zoltán

Bei mir habe ich gerade das Projekt gesäubert und es hat funktioniert -> Produkt -> Sauber

18

TLDR: Löschen Sie Ihren Project Build-Ordner - und Sie werden von diesen Schmerzen befreit sein.

(Außerdem habe ich dies als Fehler mit Apple, da sie einen Weg finden müssen, dies in Xcode zu beheben) angemeldet.

Keine dieser Lösungen funktionierte für mich - ich schlug meinen Kopf gegen mehrere Wände.
Ich habe mir das CoreSimulator-Protokoll angesehen und festgestellt, dass versucht wurde, eine Bibliothek zu erstellen, die ich gelöscht hatte. Ich konnte nirgendwo Hinweise darauf finden.

Dann habe ich über eine andere SO Frage, die ich leider nicht finden kann, um zu verweisen, wenn Sie:

  1. Halten Sie die Wahltaste gedrückt, und die Option Produkt-> Bereinigen wird zu Clean Build Folder
  2. Drücken Sie darauf und genießen Sie es, wenn Ihr Fehler verschwindet
15
UKDataGeek

"Inhalte und Einstellungen zurücksetzen" von iOS Simulator Menüoptionen und Starten des Simulators nach Beenden löste mein Problem.

Reset Content and Settings

12
Sauvik Dolui

In XCode 6

Beim Ausführen ist ein Fehler aufgetreten (Domain = LaunchServicesError, Code = 0)

Ich hatte diesen Fehler, nachdem ich einige wichtige Codeänderungen vorgenommen hatte, um die iPhone 6-Bildschirme zu unterstützen. in Xcode 6 (iOS8)

Ich folgte den obigen Optionen und stellte fest, dass der einzige Weg, dies wirklich zu beheben, darin bestand, Folgendes zu tun:

  1. Die abgeleiteten Daten gelöscht [gehe zu Fenster >> Organizer >> (Finde deine App) Klicke auf Löschen neben den abgeleiteten Daten]
  2. Produkt >> Reinigen
  3. Inhalte und Einstellungen im Simulator zurücksetzen
  4. Die Bundle-Version wurde von 1.4 in pList auf 1.4.1 geändert

    Vielen Dank für all die vorherigen Antworten, die mich zu diesem Zeitpunkt gebracht haben. Es hat einen Zauber gewirkt!

9
Meg de Graaf

In meinem Fall wurde der Fehler verursacht, weil ich die Build-ID nicht festgelegt habe.

Wenn Sie dies einstellen, wird der Emulator problemlos gestartet.

5
jos

Ich habe eine App, die so eingerichtet ist, dass sie je nach Build-Konfiguration unterschiedliche Bundle-IDs verwendet. Beim Erstellen meiner Apple Watch-Erweiterung hat Xcode alles mit meiner Release-ID generiert, sodass ich alles zum Debuggen manuell ändern musste. Hier sind alle Stellen, an denen ich es ändern musste:

  • WatchKit Extension 's Build Settings -> Packaging -> Product Bundle Identifier
  • WatchKit Extension 's Info.plist -> NSExtension -> NSExtensionAttributes -> WKAppBundleIdentifier (dies muss dasselbe Präfix wie Ihre Begleiter-App verwenden)
  • WatchKit App 's Info.plist -> WKCompanionAppBundleIdentifier

Der letzte hat eine Weile gedauert, seit dem WatchKit App 's Info wird beim Anzeigen der Zieleinstellungen nicht als Tab angezeigt, ich musste direkt zu Info.plist Datei selbst.

3
SeanR

Eine andere Sache, die für mich funktionierte, nachdem der Simulator zurückgesetzt und ein sauberer Build erstellt wurde, ist das Löschen der abgeleiteten Daten. Gehen Sie dazu in den Organizer und klicken Sie auf Projekt. Klicken Sie auf die Schaltfläche Abgeleitete Daten löschen. Dies geschah, nachdem ich eine Weile an einer Erweiterung gearbeitet hatte, und ich ging zurück in die reguläre Zweigstelle. Hoffe das hilft.

3
possen

Dies ist, was das Problem für mich verursachte: Die Build-Nummer für die Haupt-App und die Erweiterung waren unterschiedlich (ich hatte die Build-Nummer der Haupt-App auf 1.0.1.03 erhöht, die Erweiterung jedoch auf 1.0.1.02 belassen).

Es hat das Problem für mich behoben, dass sie zusammenpassen.

3
gb_kf

Öffnen Sie die Konsolen-App und schauen Sie dort nach. In meinem Fall sagte es mir genau, was zu tun ist. Ich sah:

ErrorDescription = Die NSExtension.NSExtensionAttributes.WKAppBundleIdentifier-Wert der WatchKit-App stimmt nicht mit der Bundle-ID überein (gefunden "com.myCompany.MyApp.MyApp.watchkitapp"; erwartet "com.myCompany.MyApp"). watchkitapp ").

Also ging ich zu jeder Liste und überprüfte alle Gegenstände, die mit einer BundleID zu tun hatten. Dann reinigen, neu starten usw.

3
Jeff

"Inhalte und Einstellungen zurücksetzen" über die Menüoptionen des iOS-Simulators und das Starten des Simulators nach dem Beenden löste mein Problem.

2
hitesh landge

In meinem Fall ging es um die Framework-Kompilierung. Ich habe die Option "Nur beim Installieren kopieren" in Target-Build Phases-Embedded Frameworks aktiviert - enter image description here

2
A.G

Ich habe auch diesen Fehler. In meinem Fall ist das Protokoll ~/Library/Logs/CoreSimulator/CoreSimulator.log war so etwas:

Could not hardlink copy /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Containers/Bundle/Application/70F24DDC-7954-46BF-B799-F807FD98yyyy/myApp.app to /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Library/Caches/com.Apple.mobile.installd.staging/temp.kOrJ9G/extracted/Payload/myApp.app with manifest /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Library/Caches/com.Apple.mobile.installd.staging/temp.kOrJ9G/extracted/com.Apple.deltainstallcommands.com.mycompagny.myapp

danke dafür antwort In meiner app info.plist nachschauen. Der Schlüssel CFBundleVersion fehlte, also füge ich ihn hinzu und jetzt funktioniert alles!

2

Keines der oben genannten funktionierte für mich, aber das tat:

Ich habe einfach IceCream.xcworkspace/xcuserdata/xcuserdatad gelöscht, den Simulator zurückgesetzt und die App erneut ausgeführt. (Das Zurücksetzen des Simulators alleine hat bei mir nicht funktioniert.)

2

Die großartige Erklärung von Jeremy hat mich zumindest in die richtige Richtung gelenkt, aber trotz der korrekten Einstellung aller Paket-IDs und -Versionen blieb der Fehler bestehen. Ich habe dann das Apple-Dokumentation überprüft, was zeigt, dass die WatchKit-Erweiterung (in der Phase "Bundle-Ressourcen kopieren") die WatchKit-App kopiert. Diese WatchKit-App wurde genauso benannt wie meine iOS-App, sodass Xcode die beiden verwechselt und die falsche Liste ausliest, da die Paket-ID falsch war. Das Umbenennen des Produkts der WatchKit-App in etwas Besonderes löste es schließlich für mich.

2

Versuchen Sie, eine Zahl in [ZIELE] - [Allgemein] - [Identität] - [Version (oder Build)] einzufügen, wenn diese leer sind.

Es hat bei mir funktioniert.

Ich hoffe es hilft dir.

2
4F0A

Wenn Sie Ihre Bundle-ID geändert haben, stellen Sie sicher, dass Sie einen sauberen Build ausführen, bevor Sie versuchen, ihn erneut zu erstellen! Hier erfahren Sie, wie Sie: So leeren Sie Caches und bereinigen alle Ziele Xcode 4

1
BigCheesy

Ich hatte diesen Fehler beim Versuch, Apples Lister Xcode Project zu erstellen und auf dem Simulator auszuführen.

Das Wesentliche, was es für mich reparierte, war:

1) BundleID für die iOS App und die iOS Extension musste unterschiedlich sein 2) Ich biete iCloud und App Groups für beide Ziele an 3) Ich habe Xcodes "Fix Issue" verwendet, um die Probleme zu beheben

Danach konnte ich die App ohne Warnungen oder Fehler erstellen und ausführen.

Der Hinweis aus der Protokolldatei lautete "... LegacyErrorString = DuplicateIdentifier, FunctionName = - [MIInstallableBundle performPreflightWithError:], SourceFileLine = 450, NSLocalizedDescription = Das übergeordnete Bundle hat denselben Bezeichner (com.ACMECompany.Lister) wie das Unter-Bundle unter/Benutzer/stephen/Bibliothek/Entwickler/CoreSimulator/Geräte/5329928B-946B-40A4-B666-EFD11B96D11F/data/Bibliothek/Caches/com.Apple.mobile.installd.staging/temp.HQ5d9X/extract/Lister.app/PlugIns/Lister.appex "

1
Stephen Watson

Hatte eine falsche App-Version in InfoPlist.stringsLokalisierung Datei. Urgh!

Eine Stunde ist vergangen!

1
Alexandre G

Es ist also definitiv ein .plist-Problem. In meinem Fall war es leer NSExtensionMainStoryboard, das Entfernen dieser Eigenschaft hat das Problem behoben

1
Maciek Czarnik

Mein Problem war, dass die Wrapper-Erweiterung für das Zielprojekt nicht festgelegt war.

Um das Problem zu beheben, musste ich zu Zielprojekt -> Buildeinstellungen -> Verpackung -> Wrapper-Erweiterung gehen.

Setze dies auf "app" (keine Anführungszeichen)

Dies hat das Problem für mich behoben

0
smac89

Eine andere mögliche Lösung, um alle anderen hinzuzufügen, die zweifellos über meiner bleiben werden;)

Ich habe ein Today Extension-Ziel gelöscht und später wiederhergestellt, wobei die Quelldateien erhalten blieben, aber nachdem ich jede Lösung unter der Sonne ausprobiert hatte, stellte ich fest, dass es keine Quellen oder Ressourcen im Ziel hatte! Dies kann auch vorkommen, wenn Ihr detaillierter Fehler beim Starten von Diensten Ihre kompilierte App-Erweiterungsdatei nicht findet.

Also, um es kurz zu machen, stellen Sie sicher, dass in Ihrem Ziel etwas enthalten ist, das Sie kompilieren oder bündeln können. Sie können Ihre Zielmitgliedschaften überprüfen, indem Sie die entsprechenden Dateien in Ihrem Projektnavigator (links) auswählen und die entsprechenden Häkchen im Dateiinspektor (das ist die erste Registerkarte rechts) setzen.

0
Simon Rice

enter image description here

Löschen Sie Ihren Simulator und generieren Sie einen neu.

Für mich geht das.

0
keywind

Ich habe den Schlüssel in der Datei App ansehen .plist entfernt, der eigentlich nicht hätte sein sollen. Und das Problem ist verschwunden.

0
mikezs

Dieser Fehler wurde auf meinem System angezeigt, wenn kein Festplattenspeicher verfügbar war. Ich habe auf meinem System etwas Platz frei gemacht, damit es funktioniert.

0
anjani kp

Ich hatte folgendes in meinem Log ...

<Error>: Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=ExecutableTwiddleFailed...

Dies lag daran, dass im Erweiterungsprojekt keine Quelldateien hinzugefügt wurden.

0
combinatorial

Das hat bei mir funktioniert: In den Projekteinstellungen -> Registerkarte Allgemein -> Abschnitt Identität habe ich die Versionsnummer von 2.0.2 (drei Ziffern) auf 2.0 (zwei Ziffern) geändert, dann die App im Simulator gelöscht und das Projekt erneut ausgeführt . Danach kein Fehler mehr.

0
user1870522

Ich hatte dieses Problem auch, es stellte sich heraus, dass eine meiner info.plist dem Ziel speziell zugewiesen wurde, wenn angenommen wird, dass sie keiner zugewiesen werden soll. Es gibt tatsächlich eine Xcode-Einstellungsempfehlungswarnung, auf die ich getippt und die Änderungen akzeptiert habe. Dies löste das Problem.

0
Ace Green