2

我正在使用以下函数使用 Facebook 令牌和 Firebase FIRAuth 函数登录用户。没有错误,也没有电子邮件属性的打印。好像该函数不会被调用。

var login = FBSDKLoginManager()

@IBOutlet weak var fbBtnPressed: UIButton!

@IBAction func fbBtnPressed(_ sender: AnyObject) {

    login.logIn(withReadPermissions: ["public_profile", "email", "user_friends"], from: self) { (FBSDKLoginManagerLoginResult, Error) in

        if Error != nil {
            print("The login with Facebook don't working. Erro: \(Error)")
        } else {
            let accessToken = FBSDKAccessToken.current().tokenString
            print("Login with Facebook ok. \(accessToken)")                

            let credential = FIRFacebookAuthProvider.credential(withAccessToken: FBSDKAccessToken.current().tokenString)

            FIRAuth.auth()?.signIn(with: credential) { (email, error) in

                if (error != nil) {
                    print("The login in the Firebase broke \(error)")
                } else {
                    print("Login in the Firebase ok \(email)")   
                }   
            }   
        }   
    }       
}
4

1 回答 1

1

经过大量研究,这似乎是 Swift3 结合 Keychain swap 的变化。

您必须在功能下的项目中启用 Keychange 共享。

在此处输入图像描述

在此处输入图像描述

于 2016-10-02T00:29:47.193 回答