登录后,Facebook登录不会忽略登录对话框

gbh*_*all 6 facebook-login facebook-ios-sdk swift firebase-authentication sfsafariviewcontroller

使用LoginManagerFacebook iOS SDK进行登录,如下所示:

let loginManager = LoginManager()
loginManager.logIn([.publicProfile, .email], viewController: self) { (loginResult) in
Run Code Online (Sandbox Code Playgroud)

登录对话框通过Safari打开facebook.com,它有一个按钮供我使用

使用Facebook App登录

当我点击Facebook应用程序中的"继续"时,我将返回到我的应用程序,但是即使loginResult返回,登录对话框也不会被解雇.success.

这是在成功登录后返回我的应用程序后显示的内容: 在此输入图像描述

唯一的选择是我点击"取消".它似乎是Login Dialog SFAuthenticationViewController,目前在Google搜索中包含0个结果.

似乎其他人过去遇到的问题是,AppDelegate他们没有调用适当的授权流处理,application:openURL:options:但成功地被调用如下:

@available(iOS 9.0, *)
func application(_ application: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {
    print("application open url\n\(url)\noptions \(options)")

    if url.absoluteString.hasPrefix("fb") {
       print("Finishing Facebook log in flow")
       return SDKApplicationDelegate.shared.application(application, open: url, options: options)
    } else {
        print("Finishing Google sign in flow")
        return GIDSignIn.sharedInstance().handle(url, sourceApplication:options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String, annotation: [:])
    }
}
Run Code Online (Sandbox Code Playgroud)

我唯一能想到的是一些不兼容问题,因为我在iOS 11 Developer测试版上使用Swift 4,而且SFAuthenticationViewController似乎没有在线使用的结果.

我不确定为什么对话框不会自动被解雇.


更新:

我创建了一个全新的空白应用程序,只有一个按钮FacebookCore,FacebookLogin依赖项和问题仍然存在.

遵循的步骤:

  1. https://developers.facebook.com/docs/facebook-login/ios
  2. https://developers.facebook.com/docs/swift/getting-started
  3. https://developers.facebook.com/docs/swift/login

gbh*_*all 2

更新:

\n\n

现在在 SDK 中工作0.3.0https://github.com/facebook/facebook-sdk-swift/releases

\n\n
\n\n

Facebook官方回应更新:

\n\n
\n

嗨加雷斯,

\n\n

感谢您举报此问题!iOS 11 仍处于测试阶段,我们目前不支持它。

\n\n

最好的问候,G\xc3\xbcnay

\n
\n\n
\n\n

这是运行 iOS 11 的设备上的错误。在运行 iOS 10 的设备上运行良好。

\n\n

此处提交的错误报告:https ://github.com/facebook/facebook-sdk-swift/issues/172

\n