Facebook Login not going back to App when migrated to Swift 3

為{幸葍}努か 提交于 2019-12-04 07:12:06

Facebook docs need to be updated.

For iOS 9+, rather than using:

func application(_ application: UIApplication, open url:URL, sourceApplication: String?, annotation: AnyObject) -> Bool

You should be using:

func application(_ app: UIApplication, open url: URL, options: [String : AnyObject] = [:]) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application,
                                                                 openURL: url,
                                                                 sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String,
                                                                 annotation: options [UIApplicationOpenURLOptionsAnnotationKey])
}

Seems like options[UIApplicationOpenURLOptionsAnnotationKey] doesn't work anymore. now you have to do it like this: options[UIApplicationOpenURLOptionsKey.sourceApplication]

This is what works for me

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

    return FBSDKApplicationDelegate.sharedInstance()
                                   .application(app, 
                                               open: url,
                                  sourceApplication: options[UIApplicationOpenURLOptionsKey.sourceApplication] as! String,
                                         annotation: options[UIApplicationOpenURLOptionsKey.annotation])
}
Naresh S

The above function had to be changed a little bit . I had the same issue and It has worked for me. See the function below:

func application(_ app: UIApplication, open url: URL, options: [String : AnyObject] = [:]) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(app,open: url,sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String,annotation: options [UIApplicationOpenURLOptionsAnnotationKey])
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!