Facebook Sdk 4.0如何检查是否在sdkinitialize之后登录

时间:2015-05-18 12:03:16

标签: android asynchronous facebook-login facebook-sdk-4.0

在我的第一个活动开始时,我想检查用户是否已登录Facebook。开发网站和这里的另一篇文章说你必须用getcurrentaccesstoken()检查它。虽然这是有效的,但是如果您在初始化facebooksdk之后执行此检查,则似乎不准确。像这样:

    FacebookSdk.sdkInitialize(getApplicationContext());
    if (AccessToken.getCurrentAccessToken() == null || AccessToken.getCurrentAccessToken().isExpired()){
        // start loginactivity
    }

由于facebooksdk.initialize()从共享首选项中获取令牌异步,因此在执行sdkinitialize之前执行if语句。因此,AccessToken始终为null。

我基本上想在初始化后立即进行此检查,有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

您可以自己从共享偏好设置中保存和检索访问令牌吗?当用户首次登录时只保存访问令牌,然后在初始化Facebook时,您可以从共享首选项中获取令牌。基本上你会做facebook方法正在做的事情,但你只是不需要等待。