我正在使用FBSDKLoginManager接收令牌以供以后使用(FB发布),并在确认访问后进入无限循环。
调用 时FBSDKLoginManager(),会出现以下弹窗(对不起,它是德语……这是官方的 Facebook 弹窗,用户可以在其中选择是手动登录还是使用 FB App 登录)。

现在出现以下错误:
如果我使用第二个按钮(通过电话号码或电子邮件地址登录),一切正常。该函数返回一个令牌,我可以在我的应用程序中继续。
错误:如果我使用第一个按钮(使用 Facebook 应用程序登录),Facebook 应用程序打开,我可以在 FB 中设置所有隐私设置,并确认。确认访问后,FB-App 将自动关闭并返回相同的弹出屏幕,无需任何更改。返回此屏幕后没有任何动作...
我不知道问题出在哪里......没有错误消息。由于使用电子邮件登录时一切正常,因此问题一定出在 FB-App 的返回上。电子邮件登录通过 Safari 工作,在错误情况下,FB-App 会中断。
let login: FBSDKLoginManager = FBSDKLoginManager()
login.logIn(withPublishPermissions: ["publish_actions"], from: self) { (result, error) in
if (error != nil) {
print("publish_actions: \(error!)")
} else if (result?.isCancelled)! {
print("publish_actions: Canceled")
} else if (result?.grantedPermissions.contains("publish_actions"))! {
//print("publish_actions: permissions granted: \(String(describing: result?.token.tokenString))")
UserDefaults.standard.set(result?.token.tokenString, forKey: "facebook_token")
}
添加的框架:Bolts / CoreKit / LoginKit
开发环境: Xcode 9.2 / iPhone 6s 安装 iOS 11.2 / 最新 Facebook 应用程序。