Session.getActiveSession () gibt beim Starten der App null zurück, obwohl ich verbunden bin

8

Ich verwende com.facebook.widget.UserSettingsFragment, um die Anmeldung / Abmeldung bei Facebook in meiner App zu verwalten:

%Vor%

In einem anderen Fragment (aber gleich Activity ), Vor der Veröffentlichung auf Facebook überprüfe ich, ob ich mit

angemeldet bin %Vor%

Wenn ich meine App starte und versuche zu veröffentlichen, erhalte ich immer ein null Session , obwohl ich mich vorher angemeldet habe. Und wenn ich UserSettingsFragment starte, zeigt es mir, dass ich verbunden bin.

Wie kann Session.getActiveSession(); null sein, wenn ich tatsächlich verbunden bin?

Außerdem, wenn ich Fragment starte, wo ich direkt nach UserSettingsFragment veröffentliche, bekomme ich die korrekte Session , d. h.:

%Vor%

aber

%Vor%

Jeder kann helfen?

    
jul 18.08.2013, 05:24
quelle

2 Antworten

34

Ok, ich habe gerade von openActiveSessionFromCache gelesen (nicht von Facebook doc):

%Vor%     
jul 18.08.2013, 07:40
quelle
0

Juls Antwort funktioniert nicht für mich. Also habe ich das versucht:

Wenn Sie sich früher angemeldet haben und die App neu gestartet wurde, ist die Sitzung möglicherweise nicht null und könnte sich im Status CREATED_TOKEN_LOADED befinden. Dieser Status bedeutet, dass die Sitzung noch nicht geöffnet wurde und ein zwischengespeichertes Token enthält. Das Öffnen einer Sitzung in diesem Zustand beinhaltet keine Benutzerinteraktion. Um die Sitzung von diesem Status aus zu öffnen, können Sie die Methode session.openForRead (null) aufrufen. Dies öffnet die Sitzung ohne Benutzerinteraktion sofort.

Überprüfen Sie, ob der folgende Code hinzugefügt wurde:

%Vor%     
GunnerFan 16.10.2014 07:44
quelle

Tags und Links