Die Verwaltung von Facebook-Sitzung in der Android-App in verschiedenen Aktivitäten mit Facebook-SDK 3
Habe ich begonnen, mit Facebook SDK 3.0. Ich bin mit LoginButton widget für login in das Facebook. Ich beziehe mich Leckeres Beispiel dafür. In diesem Beispiel wird eine Aktivität(Wo die session initialisiert wird) ist das hosting mehrerer Fragmente.
Aber in meiner app, die mehrere Tätigkeiten hosting mehrere Fragmente. Zuerst die launcher-Aktivität(Wo die session initialisiert wird) funktioniert der login-Vorgang mit der LoginButton widget. Wie kann ich mit der session, wenn ich in andere Aktivitäten???
Fand ich dieselbe Art von Fragen auf StackOverFlow, aber es beantwortet für veraltet Facebook-Objekt. Aber ich brauche die Antwort mit Bezug auf LoginButton widget, UiLifecycleHelper und Sitzung.StatusCallback.
Vielen Dank im Voraus
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie beziehen sich immer auf die einzigartige Sitzung Klasse.
Jede Aktivität hat eine bereits geöffnete Sitzung vom Sitzung Klasse oder, wenn keine gültigen Sitzungen gefunden werden, erstellt ein neues. Die Methode dafür ist die Sitzung.getActiveSession().
Dann in jeder Aktivität, die Sie hinzufügen die callback definieren, dass die Logik, die Bezug auf ein session-Zustand zu ändern.
Den UiLifecycleHelper ist eine sehr nützliche Klasse, die helfen können Sie verwalten die Sitzung Stand unter der lifecycle-Aktivitäten (zum Beispiel die onPause () - Methode dieser Klasse befassen sich mit der Entfernung von der callback Hinzugefügt, in der Aktivität, in der es heißt)
Session.getActiveSession()
und wenn es nicht geöffnet wird, nenne ichSession.openActiveSessionFromCache(this)
. Ist es richtig???openActiveSessionFromCache
öffnen Sie eine Sitzung nur, wenn es eine token-cache zur Verfügung. StattdessenSession.openActiveSession(activity, true, sessionCallback)
. Ich benutze diese Methode, wenn die session ist null und sogar whene es ist eine Sitzung, aber es ist nicht eröffnet.openActiveSession()
nur, wenngetActiveSession()
null zurück. Obviuous der callback wird aufgerufen, nur auf ein session-Zustand zu ändern. Schließlich sehe ich, dass Sie falsch für den allowLoginUi, in diesem Fall eine neue session erstellt wird und nur geöffnet, wenn es eine token-cache zur Verfügung.