Facebook的到期日期为0

时间:2012-07-25 13:53:28

标签: android facebook-graph-api

我刚刚意识到我没有获得有关访问令牌的到期日期的任何更多信息。我正在谈论用于android的facebook SDK,我用authorize()回调调用DialogListener方法,如下面的代码所示。

我已经好几个星期都没看过它了,我知道它之前有效,现在当我回到项目时,我发现facebook.getAccessExpires()每次都返回0的呼叫。

我的第一个想法是API可能会被破坏并且应用了一些我没有注意到的更改。然而,使用大约相同年龄的iPhone项目似乎会收到到期日期。 (从我可以看到的,我缺乏客观的技能^^)。

接下来我从facebook's github检查了提交5a72863793521a96f5a9f4fb72960a27b98e441d因为我这次开始实施支持FB并且这样想我可能会看到SDK是否以某种戏剧性的方式发生了变化。

到目前为止,我所有的努力都是徒劳的,我无法想出在哪里追踪这个错误的好理由。

DialogListener dialogListener = new DialogListener(){
    @Override
    public void onComplete(Bundle values) {
        mPrefsEdit.putString(USER_ACCESS_TOKEN, facebook.getAccessToken() )
                  .putLong(USER_ACCESS_EXPIR, facebook.getAccessExpires() )
                  .commit();
        }
   //other required overrides
}

Facebook facebook = new Facebook(APP_ID);    
facebook.authorize(activity, APP_PERMISSIONS, Facebook.FORCE_DIALOG_AUTH, dialogListener);

1 个答案:

答案 0 :(得分:0)

facebook停止提供offline access token permission的访问权限。因此访问令牌在非常有用的时间(2-8小时)内有效。有关详细信息,请参阅facebook blog

这是facebook.getAccessExpires()总是返回0的主要原因。