簡體   English   中英

Facebook SDK iOS登錄

[英]Facebook SDK iOS Login

使用適用於iOS的Facebook SDK,如何判斷用戶是否已經登錄,因此該應用程序不必經過登錄過程?

當前,在登錄過程中,我將訪問令牌和到期日期保存為用戶默認值,然后在我的應用程序運行時開始初始化facebook對象時將其讀出。

但是,如果用戶后台應用程序,進入Safari,更改為其他Facebook帳戶或登錄,然后又回到我自己的應用程序中,將會發生什么。 Facebook應用程序不應該返回存儲的會話不再有效嗎? 我將如何解決? 當前,我的facebook對象認為該會話有效,但是不幸的是,當我嘗試發布內容時,在相應的Facebook頁面上看不到任何內容。

我在這里想念什么嗎? 謝謝你的幫助!

關於Facebook在iPhone(SDK v3.0 +)上的登錄,它在系統級別登錄中排名第一,在Facebook本機iOS應用程序中排名第二,在移動Safari Facebook登錄中排名第三。 但是,如果用戶使用移動瀏覽器登錄到您的應用程序,使該應用程序后台運行,使用移動瀏覽器登錄到另一個Facebook帳戶,然后返回到您的應用程序,則在您退出iOS之前,應用程序中的訪問令牌和會話將一直有效應用程式。 通常,您使用以下行注銷:

[FBSession.activeSession closeAndClearTokenInformation];

登錄是通過以下方式來啟動的:

[FBSession openActiveSessionWithReadPermissions:

如果您使用的是Facebook iOS SDK 3.2+,則可以調用以下命令查看是否打開了經過身份驗證的Facebook會話:

[[FBSession activeSession] isOpen]

另外,您不必在本地保存訪問令牌或到期日期。 您可以通過以下電話訪問它們:

[FBSession activeSession].accessTokenData.accessToken
[FBSession activeSession].accessTokenData.expirationDate

這是一些相關的Facebook iOS文檔的鏈接:

Facebook登錄-iOS SDK

您正在執行正確的操作來保存並恢復Facebook訪問令牌和到期日期。 如果使用過期的令牌進行調用,則任何需要有效令牌的FB API都將失敗並顯示錯誤。 處理錯誤並從FB本地注銷,然后要求您的用戶再次登錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM