使用Facebook凭据的Firebase身份验证不起作用



我正在尝试使用Firebase设置Facebook登录到我的应用程序。当我试图使用firebase使用facebook凭据登录时,我会收到以下错误:

*Failed to sign up with error:* Remote site 5XX from facebook.com for VERIFY_CREDENTIAL

其中这个字符串的第一部分(*之间的部分(不是错误的一部分,但我在打印中添加了它,以找出这个错误的确切位置。下面的代码片段使这一点更加清晰。

// MARK: Sign in with Facebook
static func signInWithFacebook(in viewController: UIViewController, completion: @escaping (_ message: String, _ error: Error?, _ sparkUser: SparkUser?) ->()) {
let loginManager = LoginManager()
loginManager.logIn(permissions: [.publicProfile, .email], viewController: viewController) { (result) in
switch result {
case .success(granted: _, declined: _, token: _):
print("Succesfully logged in into Facebook.")
self.signIntoFirebaseWithFacebook(completion: completion)
case .failed(let err):
completion("Failed to get Facebook user with error:", err, nil)
case .cancelled:
completion("Canceled getting Facebook user.", nil, nil)
}
}
}
// MARK: Sign into Firebase with Facebook
fileprivate static func signIntoFirebaseWithFacebook(completion: @escaping (_ message: String, _ error: Error?, _ sparkUser: SparkUser?) ->()) {
guard let authenticationToken = AccessToken.current?.tokenString else {
completion("Could not fetch authenticationToken", nil, nil)
return
}
let facebookCredential = FacebookAuthProvider.credential(withAccessToken: authenticationToken)
signIntoFirebase(withFacebookCredential: facebookCredential, completion: completion)
}
fileprivate static func signIntoFirebase(withFacebookCredential facebookCredential: AuthCredential, completion: @escaping (_ message: String, _ error: Error?, _ sparkUser: SparkUser?) ->()) {
Auth.auth().signIn(with: facebookCredential) { (result, err) in
// Here I get the error
if let err = err { completion("Failed to sign up with error:", err, nil); return }
print("Succesfully authenticated with Firebase.")
self.fetchFacebookUser(completion: completion)
}
}

在得到错误之前;成功登录Facebook"是打印出来的,但在那之后我得到了前面提到的错误。我遵循了Firebase指南的步骤,我也检查了不同的东西:

  • 我的密钥(ID应用程序和密钥(在我的facebook应用程序配置中与在firebase facebook身份验证模式中相同
  • 该应用程序仍然是";欠开发";因此,我正在使用管理员配置文件测试登录
  • 客户端中嵌入的应用程序秘密已关闭。此解决方案是在类似问题中提供的
  • 我检查了facebook登录配置的步骤(正确的捆绑包ID、单点登录、info.plist-config、appdelegate(
  • Firebase SDK配置(google.plist、appdelegate(

在facebook或firebase设置中还有什么需要做的吗?或者我的代码有问题吗?

Unity SDK对我来说也是个问题,最后,我找到了一个解决方案。

检查此链接。github问题

在上一篇文章中,我删除了我的应用程序,然后创建了一个新应用程序,但更改了应用程序类型,它成功了!

图像

相关内容

最新更新