我尝试在我的 swift 应用程序中使用 firebase 实现 facebook 身份验证。不幸的是我收到这个错误
canOpenURL: failed for URL: "fbauth2:/" - error: "The operation couldn’t 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")
}
最佳答案
我最近在我的一个项目中遇到了同样的问题,我将 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'
谢谢。
关于ios - 使用 firebase canOpenURL : failed for URL: "fbauth2:/" - error: "The operation couldn’ t be completed. 的 Swift Facebook 身份验证(OSStatus 错误 -10814。)”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54980492/