2015-08-12 6 views
19

Auf Facebook-Servern muss sich in letzter Zeit etwas geändert haben, was die Verarbeitung von Login-Anfragen betrifft, da diese früher einwandfrei funktionierte und plötzlich gestoppt wurde.FBSDKLoginManager mit FBSDKLoginBehaviorWeb fehlgeschlagen mit Fehler "Nicht eingeloggt"

(Wir verwenden FBSDKLoginManager.loginBehavior = FBSDKLoginBehaviorWeb, weil, wie unsere App für mehrere Marken repliziert werden (eine Code-Basis, viele Apps) und Probleme, die wir in mit der nativen Login liefen.)

Wie auch immer, das ist, was wir jetzt sehen, wenn wir versuchen, einen Login webview dem Benutzer zu präsentieren (vor es lässt sie sogar einzuloggen versuchen):

enter image description here

(nicht angemeldet. Sie sind nicht angemeldet Bitte anmelden und versuchen Sie es erneut.)

Dies ist der Code, den wir verwenden, die Login-Ansicht zu präsentieren:

NSString *const publish_actions = @"publish_actions"; 
FBSDKLoginManager* login = [FBSDKLoginManager new]; 
login.loginBehavior = FBSDKLoginBehaviorWeb; 
[login logInWithPublishPermissions:@[publish_actions] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) { 
    [FBSDKAccessToken setCurrentAccessToken:result.token]; 
    // ... 
}]; 

Beachten Sie auch, dass dieses Problem auf iOS nicht spezifisch ist. Unsere Android-App sieht das gleiche (und auch früher funktionierte es bis vor kurzem).

Antwort

35

ich diesen gleichen Fehler mit ... scheint, als ob das Problem in Ihrem info.plist URL-Schema-Einstellungen liegt: Facebook SDK: app not registered as a URL Scheme

jedoch das Hinzufügen dieser führt zu der Anwendung, die Sie aus dem eigentlichen Facebook-App das Senden für Authentifizierung, anstatt das Login-Modal in Ihrer eigenen App anzuzeigen.

** UPDATE **

Sorry, ich sprach zu früh ... die oben genannten Änderungen werden die Dinge helfen (oder den Fluss Benutzer in einer Weise zu ändern, die Sie nicht wollen), aber was wirklich benötigt wird passieren (und das ist die einzige Sache), war nur Hinzufügen einer "iOS-Plattform" (oder andere) zu Ihren App-Einstellungen im Facebook-Entwickler-Portal. Das hat es für mich jedenfalls getan. :)

enter image description here

+0

Du hast Recht, alles es nimmt am Ende war ein Wildcard-Bündel-ID hinzufügen ('com.mycompany. *') Auf die iOS-Plattform-Einstellungen und alles andere leer/deaktiviert bleibt. Es scheint mir, dass ich das in der Vergangenheit ohne Erfolg versucht habe, aber ich habe es gerade jetzt ausprobiert und der Login funktioniert jetzt wieder! – devios1

Verwandte Themen