2012-03-26 58 views
4

我正按照Facebook文檔中的指示在我的應用中實施Facebook iOS SDK。也就是說,訪問令牌和相應的到期日期被保存,以便在我的Facebook登錄例程被執行時,它可以檢查isSessionValid,如果是,它可以避免執行多餘的authorize呼叫。這很好,除非用戶已經授權/刪除Facebook應用程序。Facebook iOS SDK - 如何確定用戶是否已刪除應用程序,而無需每次調用​​授權?

因爲isSessionValid只檢查是否有保存的訪問令牌和過期沒問題,似乎沒有任何方法可以捕獲應用程序被取消授權的情況,從而再次執行authorize

有沒有人有這個好的解決方案?

因爲我的應用程序保持自己的會話,並應保持用戶無限期登錄,整個例程應該只發生一次,所以忘記每次保存令牌/到期日和運行authorize的開銷可能不會那麼糟糕。讓我知道你的想法。

回答

0

您可以設置僅授權使用Safari瀏覽器或應用程序的授權內,要做到這一點,你必須從編輯Facebook.m文件:

[self authorizeWithFBAppAuth:YES safariAuth:YES]; 

到:

[self authorizeWithFBAppAuth:NO safariAuth:NO]; 
+0

我所知道的是 - 它如何幫助這種情況呢?這不是授權的手段,而是一個事實,如果我們使用保存的令牌,我們無法檢查用戶是否因爲通過他們的Facebook個人資料而被刪除/取消授權。 – 2012-03-27 01:29:29

+0

Sory我沒有正確讀取它,我不確定,但是沒有可能通過fb api檢查這個問題,你檢查了fbDidNotLogin何時被解僱或者某些FbSession委託人?但是您可以創建服務器,在該服務器中將授權用戶的數據庫添加到您的應用程序中,並且每次用戶打開您要檢查的應用程序都是用戶默認位於服務器中的令牌。 – mientus 2012-03-27 07:06:09

相關問題