wake-up-neo.com

FBSOpenApplicationErrorDomain-Fehler 1

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.

47

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.

48
Denis

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 :)

19
i Code 4 Food
  1. Simulator-> Inhalt und Einstellungen zurücksetzen
  2. Beenden Sie den Simulator
  3. Führen Sie die Testfälle erneut aus
6
UnchartedWorks

In einer tvOS-App können Sie zum Simulator gehen, die App dort löschen und das Programm erneut ausführen.

6
NRR

Wenn die anderen Fixes nicht funktionieren

Ging durch diese Versuche:

  1. Beenden Sie die App im Simulator mit Gewalt
  2. simulator zurücksetzen
  3. app vom Simulator entfernt
  4. Deaktivierte App Transport-Sicherheit weltweit (nicht empfohlen)
  5. Deaktivierte alle Hintergrundmodi Die Ausgabe von Debug-Sitzungen wurde immer zurückgegeben

Das war mein Fix

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.

4
damote

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.

3
Ohad Schneider

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.

2
PKCLsoft

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. 

1
Munir Mehta

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.

1
Garry

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 .

1
Barney Szabo

Wenn Sie den Simulator beenden (Befehl + Q) und ihn erneut starten, wurde das Problem behoben.

1
Khurram Shehzad

Ich habe versucht, Detox mit einer React Native App auszuführen, und der Detox Getting Started Guide empfahl diesen Befehl:

Sehr schlechter Build-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.

Befehl für fehlerhafte Erstellung:

$ xcodebuild -workspace ios/MyApp.xcworkspace -scheme MyApp -configuration Debug -derivedDataPath ios/build

Guter Build-Befehl:

$ xcodebuild -workspace ios/MyApp.xcworkspace -configuration Debug -scheme MyApp -destination 'platform=iOS Simulator,name=iPad (6th generation)' -derivedDataPath ios/build
0
PaulMest

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 .

ERLÄUTERUNG

App Transport-Sicherheit

"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.

Lösung

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-SDK

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. 

  • Deaktivieren Sie ATS in Ihrer App.
  • oder Whitelist Facebook-Server für Netzwerkanfragen.

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.

Quelle: Facebook - Vorbereiten der Apps für iOS9

0
APesate

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.

0
Jeson Martajaya

Versuchen Sie, Ihren Simulator zurückzusetzen

Sudo rm -rf /private/tmp/com.Apple.CoreSimulator.SimDevice.*
0
Daisy R.

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

0
sai