簡體   English   中英

Android Facebook SDK記住會話

[英]Android Facebook SDK Remember Session

我正在寫一個需要登錄facebook的應用程序。 我可以讓用戶在他/她第一次打開應用程序時登錄。 但是,我無法在重新啟動應用程序后檢索會話。 我的登錄代碼如下:

private static Session openActiveSession(Activity activity, boolean allowLoginUI, StatusCallback callback, List<String> permissions) {
    OpenRequest openRequest = new OpenRequest(activity).setPermissions(permissions).setCallback(callback);
    Session session = new Session.Builder(activity).build();
    if (SessionState.CREATED_TOKEN_LOADED.equals(session.getState()) || allowLoginUI) {
        Session.setActiveSession(session);
        session.openForRead(openRequest);
        return session;
    }
    return null;
}

並且在打開應用程序時使用isLoggedIn方法以了解用戶是否已登錄。

public static boolean isLoggedIn() {
    Session session = Session.getActiveSession();
    if (session != null && session.isOpened()) {
        return true;
    } else {
        return false;
    }
}

但是當應用程序關閉並重新打開時,此方法永遠不會返回true

如果他/她過去登錄,如何在顯示彈出窗口的情況下檢索舊會話以獲取用戶的Facebook帳戶信息。

您可以調用Session.openActiveSessionFromCache,只有在存在緩存的訪問令牌時才會打開活動會話,否則返回null。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM