2012-07-25 19 views
0

我剛剛意識到我沒有得到有關訪問令牌到期日期的更多信息。正確地說,我正在談論Android的Facebook SDK,我將authorize()方法稱爲DialogListener回調,如下面的代碼所示。Facebook的到期日期爲0

我還沒有看過它幾個星期btu我知道它工作之前,現在當我回到項目中,我發現facebook.getAccessExpires()每次返回0的電話。

我的第一個想法是API可能被打破,應用的一些變化我沒有注意到。但是,使用大約相同年齡的iPhone項目似乎會收到過期日期。 (從我所看到的,我缺乏客觀技能^^)。

接下來我檢出了5a72863793521a96f5a9f4fb72960a27b98e441dfacebook's github因爲我在這段時間開始實現支持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); 

回答

0

facebook停止提供訪問offline access token permission。所以訪問令牌在非常分類時間(2-8小時)內有效。有關更多詳細信息,請參閱facebook blog

這主要原因facebook.getAccessExpires()總是返回0.

+0

甜!不是我有更多需要思考的東西,而是快速而明確的答案。感謝您的鏈接! :) – yoshi 2012-07-25 14:23:40