Swift Facebook Auth with firebase canOpenURL:URL 失败:“fbauth2:/” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”

Posted

技术标签:

【中文标题】Swift Facebook Auth with firebase canOpenURL:URL 失败:“fbauth2:/” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”【英文标题】:Swift Facebook Auth with firebase canOpenURL: failed for URL: "fbauth2:/" - error: "The operation couldn’t be completed. (OSStatus error -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")

【问题讨论】:

看到这个寻求帮助:***.com/questions/46319937/… 【参考方案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 与上述错误相同。您知道这里是否有解决方法吗?

以上是关于Swift Facebook Auth with firebase canOpenURL:URL 失败:“fbauth2:/” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”的主要内容,如果未能解决你的问题,请参考以下文章

flutter_facebook_auth:提供的身份验证凭据格式错误或已过期

social-auth 给出“错误”的 facebook id

flutter_auth 要求 Facebook 登录的访问令牌是啥?

Facebook API - auth.login不会触发

注销时flutter_facebook_auth插件未清除数据

Flutter Firebase auth facebook无法正常工作