Facebook的登录不不解雇登录对话框登录后
从Facebook的iOS版SDK使用LoginManager
登录,像这样:Facebook的登录不不解雇登录对话框登录后
let loginManager = LoginManager()
loginManager.logIn([.publicProfile, .email], viewController: self) { (loginResult) in
登录对话框打开facebook.com通过Safari浏览器,它有一个按钮我
登录使用Facebook的应用程序
当我点击Facebook的应用程序,我返回到我的应用“继续”,但是将L即使loginResult
返回.success
也不排除ogin对话框。
唯一的选择是对我来说,点击“取消”。它似乎是登录对话框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: [:])
}
}
我唯一可以想到的是一些不兼容问题,因为我在iOS 11 Developer beta上使用Swift 4,并且看起来正在使用的SFAuthenticationViewController
没有在线结果。
我不确定为什么对话不会自动被解雇。
更新:
我创建了一个全新的,空白的应用程序只有一个按钮和FacebookCore
和FacebookLogin
依赖性和仍然存在的问题。
步骤如下:
更新:
现在,在SDK工作0.3.0
:https://github.com/facebook/facebook-sdk-swift/releases
更新,从Facebook官方回应:
喜加雷斯,
感谢检举此! iOS 11仍处于测试阶段,目前我们并不支持 。
最好的问候,居纳伊
这是运行iOS 11.关于设备的缺陷做工精细的设备上运行iOS 10.
错误报告提交这里:https://github.com/facebook/facebook-sdk-swift/issues/172
这还没有被修复。 –
@PabloMartinez它现在在SDK 0.3.0中工作! – gbhall
SDK 0.3.0?没有0.3.0。你使用的是FBSDKLoginKit吗? –
我在iOS 11上使用Swift 3也得到同样的问题
希望Facebook在向公众发布iOS 11之前更新SDK。 – gbhall
对此很有信心。 –
现在我使用了一种解决方法,就好像我打电话给self.dismiss我可以解雇它我为iOS 11调用它两次 –
这是在模拟器? – murphguy
@murphguy否在物理设备上。 – gbhall
您是否检查过'SDKApplicationDelegate'的返回值?在'let'变量上实例化它,并相应地解析结果,或者通过打印一些错误的结果,或者发送一个通知给你的控制器来显示一个警报等。我建议这样做,因为我有相同的设置,但与返回之前的值检查,这是有效的。但是我还没有在iOS 11上尝试过。 – murphguy