iOS 9 Facebook 访问 token 在未来的应用程序发布中为零

标签 ios swift facebook-login facebook-sdk-4.0

在最近的 iOS 9 更新以及对 Facebook SDK (4.6.0) 的更新之后,我发现我的登录 session 在应用程序启动之间不再持续存在。

到目前为止,我的流程非常简单。

  1. 使用 FBSDKLoginButton 登录 Facebook。
  2. 在未来的 View 和启动中检查 FBSDKAccessToken.currentAccessToken() 以便能够在应用程序中使用 Facebook。

我发现在最近的更新之后,如果我关闭并再次启动应用程序,我的 AccessToken 现在显示为 nil。这是一个主要问题,因为以前,我只需登录一次,然后我的 session 就会自动续订。

如果我是正确的,登录应该只发生一次,之后应用程序应该能够存储它需要的信息以在将来连接到 Facebook,或者只是保留一个可以自行刷新的 token 。

有没有人知道在 iOS9 或 4.6.0 Facebook SDK 更新后可能发生了什么变化?是否需要保留属性以便在将来刷新 token ,或者 token 是否应该自动更新?我几乎 100% 肯定,使用 Facebook SDK 的预期体验是不必在每次启动应用程序时都登录(当您重新启动应用程序时,完全关闭并再次打开)。

谢谢!

更新

根据回复中的要求,我在我的 Plist 文件的 TransportSecurity 信息中添加了一个额外的 key 。不幸的是,还是没有运气。

enter image description here

最佳答案

didFinishLaunchingWithOptions 上添加这一行对我有用:

FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)

final方法看起来像这样:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

    FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)

    if let accessToken = FBSDKAccessToken.currentAccessToken(){
        print(accessToken)
    }else{
        print("Not logged In.")
    }

    return true
}

Reference

关于iOS 9 Facebook 访问 token 在未来的应用程序发布中为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32896269/

相关文章:

ios - 图像在 iPhone 8 和 8 plus 上呈现不同

iOS PDFKit在PDFView中调整pdf框架

ios - 如何使用unity SDK保持登录Facebook

javascript - Mootools 登录 facebook

ios - ScrollView 问题 Swift

ios - UICollectionViewFlowLayout Voice Over 使用流布局读取无序的项目

android - 如何在 React Native 中访问嵌套的 Text 元素中的链接?

ios - 有没有可用的ios框架集成工具?

ios - 如何更改 map 框注释 View ?

java - 尝试添加 facebook 登录但应用程序崩溃 android