2013-06-18 30 views
3

當使用ACAccountStoreACAccount時,有什麼方法可以告訴你的臉譜令牌何時到期?從ACAccountStore/ACAccount檢索Facebook令牌失效?

我創建了一個ACAccountStore,訪問用戶的Facebook帳戶,將該帳戶存儲在一個ACAccount對象中,並且能夠從憑證中檢索令牌。我也想知道這個令牌何時會到期。我如何去拉取這個令牌的到期日?或者甚至有可能?

回答

1

爲什麼你想知道什麼時候會過期?

當你得到一個令牌時,在Facebook的情況下,它的令牌生存期被延長。我認爲今天是額外的60天。所以,當你從賬戶商店得到它時,應該很好。

如果用戶使用您的應用程序,您應該關注它的唯一細節,然後決定從Facebook設置本身撤消權限。

在這種情況下,您需要確保您正在監視ACAccountStoreDidChangeNotification通知並正確呼叫renewCredentialsForAccount:completion:再次請求權限,請參閱Documentation

例如:

- (void)accountChanged:(NSNotification *)note 
{ 
    [self.accountStore renewCredentialsForAccount:(ACAccount *)self.facebookAccount completion:^(ACAccountCredentialRenewResult renewResult, NSError *error){ 
     if(!error) 
     { 
      switch (renewResult) { 
       case ACAccountCredentialRenewResultRenewed: 
        // Good 
        break; 
       case ACAccountCredentialRenewResultRejected: 
        // Maybe go back to non logged in status 
        break; 
       case ACAccountCredentialRenewResultFailed: 
        // Maybe internet failed, Facebook is down? 
        break; 
       default: 
        break; 
      } 

     } 
     else{ 
      // Handle error gracefully 
     } 
    }]; 
} 

也許this tutorial可能會有一定的幫助你。

+0

我實際上並不需要我使用它的任何信息。我正在使用的API需要它與會話令牌一起使用。 雖然真的很欣賞這個教程,但會有所幫助。 – ZachLHelms

+0

僅供參考,對於那些無法找到上述鏈接教程的人(「未找到」),看起來網址已移至此處: https://www.captechconsulting.com/blogs/ios-6-turorial -integrating Facebook的 - 到 - 你的應用程序 –