Ich versuche, meine iOS-App auszuführen, die unter Verwendung von iPhone Simulator (beliebig) von Swift 1.2
zu Swift 2.0
in Xcode 7 migriert wurde.
Die Operation konnte nicht abgeschlossen werden. (FBSOpenApplicationErrorDomain Fehler 1.)
Ich habe bereits versucht, die Einstellungen und Inhalte des Simulators zurückzusetzen, Xcode zu beenden, das Projekt zu löschen usw.
Ich hatte den gleichen Fehler, nachdem ich Xcode auf v7.0 aktualisiert hatte. Nach einigen stundenlangen Schwierigkeiten stellte ich fest, dass einige leere Umgebungsvariablen für die Aktion "Ausführen" in meinem aktiven Schema übergeben wurden (keine Ahnung, warum sie vorhanden war). Durch das Entfernen dieser leeren Umgebungsvariablen wurde das Problem sofort behoben.
Dieser Fehler tritt auf, wenn eine vorherige Ausführung der App noch im Hintergrund aktiv ist, auch wenn Sie in Xcode auf "Stop" geklickt haben. Versuchen Sie, die App manuell im Simulator zu beenden: cmd + shift + H zweimal, um die laufenden Apps zu öffnen. Hinweis cmd + shift + H ist die Verknüpfung zum Startbildschirm. Dann starten Sie den neuen Lauf und es sollte gut funktionieren :)
In einer tvOS-App können Sie zum Simulator gehen, die App dort löschen und das Programm erneut ausführen.
Ging durch diese Versuche:
Scheint, als würde der Schemamanager ein Feld ohne Argumente aktivieren, die mein Problem verursacht haben.
Product menu > Scheme > Edit Scheme > Run > Arguments > Environment Variables
Wenn dort ein Häkchen mit einem leeren Feld daneben steht, deaktivieren Sie es.
Ich habe den Fehlercode "1" erhalten. Ich hoffe das funktioniert auch für dich.
In meinem Fall konnte ich es mit einem anderen Simulator lösen. Mit dem iPhone 4S
-Simulator ist es immer wieder passiert, aber als ich zum iPhone 6 Plus
-Simulator gewechselt war, war der Fehler weg.
Dieser Fehler hat (glaube ich) nichts mit einem Facebook SDK zu tun. Ich bekomme dies und ich habe überhaupt kein Facebook-SDK.
Was ich gefunden habe, ist, dass, obwohl Xcode keine Gründe für den Fehler anzeigt, das Simulatorprotokoll dies tut.
Wenn Sie diesen Fehler erhalten, wird der Simulator ausgeführt. Wechseln Sie dazu und wählen Sie im Menü "Debug" die Option "Open system log ...".
Sobald das Protokoll auf dem Bildschirm angezeigt wird, navigieren Sie zu seinem Ende und Sie sollten viel mehr Informationen (einschließlich einer Stapelverfolgung, falls Sie Glück haben) darüber, was schiefgegangen ist, angezeigt.
In meinem Fall war es eine Ausnahme, die ausgelöst wurde, weil ein Datei-Asset fehlte oder nicht gefunden werden konnte.
Nach vielem Kämpfen denke ich, das Problem ist, dass Sie versuchen, die App auszuführen, die im Hintergrund ausgeführt wird. Wenn Sie die App von xcode aus stoppen, wird sie nicht wirklich gestoppt (seltsam rechts). Sie müssen die Home-Taste drücken. Dies ist zweimal cmd + shift + h. Ich versuche immer noch, einen besseren Weg zu finden, da dies langwierig ist, aber dies wird zumindest vorübergehend funktionieren.
In meinem Fall löse ich es als.
Kündigen Sie einfach die App, an der Sie arbeiten, wenn Sie im Hintergrundmodus laufen.
es funktioniert für mich und ich hoffe, es funktioniert für Sie.
Ich habe diese Fehlermeldung erhalten, als ich Xamarin iOS, Visual Studio für Mac 7.2, für iPad 2, iOS 9.3 kompilierte. Die Lösung bestand darin, die unterstützten Architekturen des iOS-Builds in i386 + x86_64 zu ändern, unter Projekt -> Optionen -> iOS Build -> Unterstützte Architekturen .
Wenn Sie den Simulator beenden (Befehl + Q) und ihn erneut starten, wurde das Problem behoben.
Ich habe versucht, Detox mit einer React Native App auszuführen, und der Detox Getting Started Guide empfahl diesen Befehl:
$ xcodebuild -workspace ios/MyApp.xcworkspace -scheme MyApp -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build
... der in Xcode Version 10.2.1 (10E1001) alle möglichen Fehler hatte
Also habe ich den Befehl geändert, bis er erfolgreich erstellt wurde. Ich baute jedoch (unwissentlich) für die falsche Plattform. Mein xcodebuild
hat Debug-iphoneos
und nicht Debug-iphonesimulator
generiert. Obwohl xcodebuild
einen Erfolg meldete, schlug dies fehl, wenn ich die App auf den Simulator kopierte und versuchte, sie auszuführen:
$ xcrun simctl launch 35CC1D95-CDC2-4C8F-9B68-8E13EF7127D8 com.mycompany.iosapp
com.mycompany.iosapp: -1
An error was encountered processing the command (domain=FBSOpenApplicationServiceErrorDomain, code=1):
The request to open "com.mycompany.iosapp" failed.
The request was denied by service delegate (SBMainWorkspace) for reason: Unspecified.
Underlying error (domain=FBSOpenApplicationErrorDomain, code=1):
The operation couldn’t be completed. (FBSOpenApplicationErrorDomain error 1.)
Der Fix bestand also darin, per Build-Befehl zu ändern, um für die richtige Plattform zu bauen.
$ xcodebuild -workspace ios/MyApp.xcworkspace -scheme MyApp -configuration Debug -derivedDataPath ios/build
$ xcodebuild -workspace ios/MyApp.xcworkspace -configuration Debug -scheme MyApp -destination 'platform=iOS Simulator,name=iPad (6th generation)' -derivedDataPath ios/build
Ich bin mir ziemlich sicher, dass dieses Problem mit den ATS unter iOS 9 zusammenhängt.
Stellen Sie sicher, dass Sie die vom FB-Team bereitgestellten Schritte befolgt haben, damit das SDK unter iOS 9 funktioniert. Versionshinweise .
"App Transport Security ist eine Funktion, die die Sicherheit von Verbindungen zwischen einer App und Webdiensten verbessert. Die Funktion besteht aus Standardverbindungsanforderungen, die den Best Practices für sichere Verbindungen entsprechen. Apps können dieses Standardverhalten außer Kraft setzen und die Transportsicherheit deaktivieren.) . "
"Alle Verbindungen, die die APIs NSURLConnection, CFURL oder NSURLSession verwenden, verwenden das Standardverhalten der App Transport Security in Apps, die für iOS 9.0 oder höher und OS X 10.11 oder höher erstellt wurden. Verbindungen, die den Anforderungen nicht entsprechen, schlagen fehl."
Quelle: Apple - App Transport Security Technote
Dies bedeutet, dass die Verbindung fehlschlägt, wenn Sie versuchen, eine Verbindung mit einer App herzustellen, die für iOS 9.0 oder höher oder OS X 10.11 oder höher erstellt wurde und diese Verbindung nicht den Anforderungen von ATS entspricht.
Es gibt zwei Lösungen für dieses Problem.
Empfohlen
Stellen Sie sicher, dass Ihre Verbindungen den Anforderungen von ATS entsprechen.
"Vorübergehende Lösung"
Deaktivieren Sie den ATS in Ihrer App, um Verbindungen zuzulassen, die diesem nicht entsprechen.
Dies kann eine vorübergehende Lösung sein, da Sie jetzt die Verwendung des ATS in Ihrer App deaktivieren können. In zukünftigen Versionen wird diese Option möglicherweise entfernt und Sie müssen ATS als Standardsicherheitsfunktion verwenden.
Facebook, um Zeit zu gewinnen und seinen Benutzern zu ermöglichen, ihr SDK weiterhin in iOS 9.0 und OS X 10.11 zu verwenden. Sie haben die "Temporäre Lösung" ausgewählt und deshalb müssen Sie.
Um dies später zu tun, müssen Sie Ihrer Ziel-.plist Folgendes hinzufügen
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>facebook.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>fbcdn.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>akamaihd.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
</dict>
</dict>
Möglicherweise müssen Sie auch andere Änderungen vornehmen. Wenn Sie eines der Facebook-Dialogfelder verwenden (z. B. Login, Teilen, App Invites usw.), können Sie eine App zu Facebook-Apps wechseln.
Nach der akzeptierten Antwort von Denis wird der von ihm erwähnte impossible places
zuerst aus dem Simulator System Log entdeckt. (Mac XCode Simulator> Debuggen> Systemprotokoll öffnen ..)
In meinem Fall versuche ich, ein Hallo Welt Xamarin Forms mit dem Simulator iPad 2 iOS 9.3
zu debuggen. Der VS2017Mac gibt den obigen Fehler aus. Das Simulator-Systemprotokoll enthält jedoch weitere Informationen
Program specified by service does not contain one of the requested architectures: XPC_FLAGS=0x0
Wie in diesem Thread erwähnt, muss ich mit der rechten Maustaste auf das iOS-Projekt klicken und Build > iOS Build > Supported architectures
in i386 + x86_64
ändern. Dies ist sinnvoll, da Apple vor IOS 11 sowohl 32-Bit- als auch 64-Bit-Apps unterstützt.
Auch das Aktualisieren des Simulators hilft. (Simulator> Hardware> Alle Inhalte und Einstellungen löschen ..). Dadurch wird sichergestellt, dass die für den Simulator bereitgestellte App die neuesten Änderungen enthält.
Versuchen Sie, Ihren Simulator zurückzusetzen
Sudo rm -rf /private/tmp/com.Apple.CoreSimulator.SimDevice.*
Produktmenü> Schema> Bearbeitungsschema> Ausführen> Argumente> Umgebungsvariablen Wenn dort ein Häkchen mit einem leeren Feld daneben steht, deaktivieren Sie es.
Die Operation konnte nicht abgeschlossen werden (Fehler "1"). Sie wurde behoben, indem Sie das Kontrollkästchen deaktivieren