如何在iOS 10上使用Facebook iOS SDK



Answers

同样的问题是在我的应用程序,我检查了很多解决方案,但没有为我工作。 我已经使用下面的方法解决了这个问题。

转到此Link选择您的应用程序,并配置您的info.plist

import并将此代码添加到AppDelegate

导入FBSDKCoreKit导入FBSDKLoginKit

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
     return FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
}

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
      return FBSDKApplicationDelegate.sharedInstance().application(app, open: url, options: options)
}
Question

我尝试使用Xcode 8使用Swift 3构建一个使用Facebook登录的应用程序。当我切换回iOS模拟器9.3时,它可以正常工作。 在iOS 10中,我收到此错误:

""fbauth2:/" The operation couldn’t be completed. (OSStatus error -10814.)"

Optional(Error Domain=com.facebook.sdk.login Code=308 "(null)")

任何人都有解决方案吗?

注1:

经过调试,这个问题是FBSDK不能更新expect_challangeSecItemUpdate函数SecItemUpdate不起作用。 这是IOS 10的一个问题




在我的情况下,修复程序是*:

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool { 

  // First, handle Facebook URL open request
  if let fbSDKAppId = FBSDKSettings.appID(), url.scheme!.hasPrefix("fb\(fbSDKAppId)"), url.host == "authorize" { 
    let shouldOpen: Bool = FBSDKApplicationDelegate.sharedInstance().application(app, open: url, sourceApplication: options[UIApplicationOpenURLOptionsKey.sourceApplication] as! String!, annotation: options[UIApplicationOpenURLOptionsKey.annotation]) 
    return shouldOpen 
  } 

  // After it, handle any other response (e.g. deep links)
  handlerOtherUrls(url: url) 
  return true 
}

*根据Facebook SDK的Github页面 @MoridinBG的推荐






Links