W poprzednich wersjach pakietu Facebook SDK mogliśmy sprawdzić, czy użytkownik jest nadal zalogowany przy użyciu tokenów. W nowej wersji 3.0 nie mogę znaleźć innego sposobu niż wywołanie openSession()
, aby sprawdzić, czy użytkownik jest nadal zalogowany przez SSO
. Ale openSession()
automatycznie wywołuje login, jeśli użytkownik nie jest zapisany, a ja tego nie chcę. Chcę tylko sprawdzić logowanie jednokrotne. Jak mam to zrobic?Facebook android sdk 3.0 SSO
Odpowiedz
Zrobiłem funkcję pomocnika, który w celu sprawdzenia, czy użytkownik jest nadal zalogowany (a właściwie ma aktywną sesję) dla mnie w mojej aplikacji:
public static boolean isActive() {
Session session = Session.getActiveSession();
if (session == null) {
return false;
}
return session.isOpened();
}
To nie działa dla mnie, wciąż otrzymuję "{Stan sesji: ZAMKNIĘTE, token: {Token AccessToken: ACCESS_TOKEN_REMOVED uprawnienia: []}, appId: 234242323423434}" w sesji – Nativ
I widzę, że niektórzy ludzie mają z tym problemy. Przede wszystkim upewnij się, że twoje klucze są poprawne w aplikacji FB. Przypominam sobie, że mam z tym jakiś problem. Mój bieżący przepływ, który działa dla mnie to 1. sprawdź isActive(); Nie? 2. wywołać openSession() 3. jeśli błąd i sesja! = Null -> session.closeAndClearTokenInformation(); –
W jakim scenariuszu używałbyś openActiveSessionFromCache –
Można również wywołać Session.openActiveSession (kontekst kontekstowy), który zgodnie z javadocs, otworzy sesję tylko wtedy, gdy nie będzie wymagać interakcji użytkownika. - Ming Li
- 1. Android Facebook SDK 3.0 przesłać lokalny obraz
- 2. Android SDK v3.0 Facebook SSO LoginButton powrocie null GraphUser
- 3. Wylogowanie Facebook Android SDK
- 4. Facebook SDK 3.0 - Uzyskaj identyfikator użytkownika Facebook i token dostępu
- 5. Udostępnij Android - Facebook SDK - ShareActionProvider
- 6. Facebook ios sdk 3.0 aktywna sesja FBiOSSDK error2
- 7. Dwa wywołania zwrotne w programie Facebook SDK 3.0 dwa razy:
- 8. Usuń LoginActivity z Manifest - Facebook SDK dla Androida 3.0
- 9. Nie można użyć uprawnienia publish_stream - Facebook SDK dla Androida 3.0
- 10. Udostępnij link i tekst za pomocą Androida Facebook SDK 3.0
- 11. Facebook Android SDK v4.0.0 ShareDialog Wydanie NullPointerException
- 12. Android Facebook SDK - session.isOpened() zawsze zwraca false
- 13. Android Facebook SDK v4 LikeView issue
- 14. Facebook Android SDK, UiLifecycleHelper StackOverflow error
- 15. Jak działa wylogowanie w Facebook SDK Android
- 16. Analiza SDK Android - Facebook Graph API v2.0
- 17. facebook wersja API wykorzystywane w facebook android SDK
- 18. Integracja Facebook w systemie Android?
- 19. Facebook SDK konflikt zależność
- 20. Base SDK 3.0 do SDK 4.0
- 21. Facebook SDK 3.0 ze starą wersją aplikacji Facebook przekierowuje do przeglądarki i utknął
- 22. Android facebook sdk publikuje kanał na osi czasu użytkownika
- 23. Zestaw SDK dla Androida: Jak Facebook sprawdzić klawisz skrótu?
- 24. facebook javascript sdk fb_xd_fragment?
- 25. keytool z Androidem Facebook SDK
- 26. Android SSO (Single Sign-On) dla aplikacji
- 27. Android Jak polubić post z Facebookiem 3.0 sdk
- 28. Facebook Sdk nie został uśpiony
- 29. Uwierzytelnianie Facebook iOS SDK i paszport-facebook
- 30. Pojemnik odniesienia '' non Android Zależności istniejące biblioteki 'facebook-android-sdk \ facebook \ bin \ com_facebook_android.jar'
muszę to zbyt. Nie mogę go znaleźć. WTF? –
Po utworzeniu sesji można sprawdzić stan obiektu Session, wywołując session.getState, a jeśli stan jest w stanie CREATED_TOKEN_LOADED, oznacza to, że są zapisane i prawidłowe tokeny i można wywołać metodę open() bezpośrednio, bez żadnego interakcja z użytkownikiem. –
Można również wywołać Session.openActiveSession (kontekst kontekstowy), który zgodnie z javadocs, otworzy sesję tylko wtedy, gdy nie wymaga interakcji użytkownika. –