【问题标题】:Swift Facebook Auth with firebase canOpenURL: failed for URL: "fbauth2:/" - error: "The operation couldn’t be completed. (OSStatus error -10814.)"Swift Facebook Auth with firebase canOpenURL:URL 失败:“fbauth2:/” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”
【发布时间】:2019-03-04 09:45:04
【问题描述】:

我尝试在我的 swift 应用程序中使用 firebase 实现 facebook 身份验证。不幸的是我收到了这个错误

canOpenURL: failed for URL: "fbauth2:/" - error: "The operation could not be completed. (OSStatus error -10814.)"

用模拟器还是实体手机试试都没关系。

这是我的 App Delegate 代码:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    FirebaseApp.configure()
    FBSDKApplicationDelegate.sharedInstance()?.application(application, didFinishLaunchingWithOptions: launchOptions)

    return true
}
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, open: url, sourceApplication: sourceApplication, annotation: annotation)
}

这是我的 ViewController 代码:

    override func viewDidLoad() {
    super.viewDidLoad()

    let loginButton = FBSDKLoginButton()
    view.addSubview(loginButton)
    loginButton.frame = CGRect(x: 16, y: 50, width: view.frame.width-30, height: 50)

    // Do any additional setup after loading the view.s


}


  func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) {
    if let error = error {
        print(error.localizedDescription)
        return
    }else{
        print("worked")
    }
}

 func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!) {
    print("logged out")
}

【问题讨论】:

标签: ios swift


【解决方案1】:

我最近在我的一个项目中遇到了同样的问题,我将 Swift 版本从 4.0 更新到 4.2

此问题来自 Facebook 4.39.0 Pod 框架。

4.39.0 版本的 FBSDKCoreKit 和 FBSDKLoginKit 不起作用,所以每当您将代码更新到 Swift 4.2 时,请提及您的代码与指定版本。

pod 'FBSDKCoreKit', '~> 4.38.1'
pod 'FBSDKLoginKit', '~> 4.38.1'
pod 'FBSDKShareKit', '~> 4.38.1'

谢谢。

【讨论】:

  • 嗨,我遇到了同样的问题,但使用的是 swift 5 - 这些版本已经过时,因为我收到错误 FirebaseUI 已解析为 8.4.2,这取决于 FirebaseUI/Facebook (= 8.4 .2) 已解析为 8.4.2,这取决于 FBSDKLoginKit (~> 5.0) 但 FBSDKLoginKit 版本 5 与上述错误相同。您知道这里是否有解决方法吗?
猜你喜欢
  • 2019-02-10
  • 2020-07-24
  • 2018-03-01
  • 2019-02-18
  • 2018-04-05
  • 2019-01-28
  • 1970-01-01
  • 1970-01-01
  • 2016-03-27
相关资源
最近更新 更多