0

Facebook не является проблемой, но firebase не может получить подробную информацию о счете в Facebook.Swift - ошибка проверки подлинности Firebase на Facebook (INVALID_CREDENTIALS)

  1. Я проверил, что INVALID_CREDENTIALS означает firebase сайт
  2. я проверил facebook идентификатор приложения и секрет.
  3. Я удалил все IP Whitelist

После того, как я строю, он показывает:

Loged в

Логин не удалось. Error Domain = FirebaseAuthentication Code = -11 "(Код ошибки: INVALID_CREDENTIALS) Недействительные учетные данные аутентификации." USERINFO = {подробности = { "providerErrorInfo": {}}, NSLocalizedDescription = (Код ошибки: INVALID_CREDENTIALS). Неверные учетные данные аутентификации, предоставляемые}

@IBAction func loginWithFB(sender: AnyObject) { 
    let facebookLogin = FBSDKLoginManager() 
    //self.performSegueWithIdentifier("CurrentlyLoggedIn", sender: sender) 
    facebookLogin.logInWithReadPermissions(["public_profile", "email", "user_friends"], fromViewController: self, handler: {(facebookResult, facebookError) -> Void in 
     if facebookError != nil { 
      print("Facebook login failed. Error \(facebookError)") 
     } else if facebookResult.isCancelled { 
      print("Facebook login was cancelled.") 
     }else{ 
      print("Loged in") 
      let accessToken = FBSDKAccessToken.currentAccessToken().tokenString 

      DataService.dataService.BASE_REF.authWithOAuthProvider("facebook", token: accessToken, withCompletionBlock: {error, authData in 
       if error != nil{ 
        print("Login failed. \(error)") 
       }else{ 
        print("Logged in! \(authData)") 
       }}) 
     } 
    }) 

ответ

0

Вы можете проверить эти строки кодов в вашем проекте. Я думаю, что ваш обработчик завершения запускает этот случай. Это ниже работает над моим проектом.

let facebookLogin = FBSDKLoginManager() 

    facebookLogin.logInWithReadPermissions(["email"], fromViewController: self) { (facebookResult: FBSDKLoginManagerLoginResult!, facebookError: NSError!) in 

     if facebookError == nil { 
      if FBSDKAccessToken.currentAccessToken() == nil { 
       print("FOUND NIL!") 
      } 
      else if(facebookResult.isCancelled) { 
       print("Cancelled") 
      } 
      else { 
       let accessToken = FBSDKAccessToken.currentAccessToken().tokenString 
       print(accessToken) 

       DataService.ds.REF_BASE.authWithOAuthProvider("facebook", token: accessToken, withCompletionBlock: { 
        error, authData in 

        if error != nil { 
         print("yes \(error)") 
        } 
        else { 

         print("Logged in! \(authData)") 

        } 
       }) 

      } 
     } 

    }