用户注销后,Firebase Facebook登录按钮不会更改

ppr*_*lon 1 facebook ios firebase swift firebase-authentication

我目前正在使用Facebook作为我的用户登录的登录名。当我的用户必须退出时,我会创建一个自定义按钮,以调用我执行的退出方法。当用户注销并返回登录屏幕时,Facebook按钮仍会显示注销,而应显示登录信息。

//my facebook button 
 lazy var facebookLogin:FBSDKLoginButton = {
        let v = FBSDKLoginButton()
        v.translatesAutoresizingMaskIntoConstraints = false
        return v
    }()

// my signout method
    let firebaseAuth = FIRAuth.auth()
do {
  try firebaseAuth?.signOut()
} catch let signOutError as NSError {
  print ("Error signing out: %@", signOutError)
}
Run Code Online (Sandbox Code Playgroud)

ron*_*ory 6

只需logOut()FBSDKLoginManager

注销用户

这将调用[FBSDKAccessToken setCurrentAccessToken:nil]和[FBSDKProfile setCurrentProfile:nil]。

// my signout method
let firebaseAuth = FIRAuth.auth()
do {
  try firebaseAuth?.signOut()
  FBSDKLoginManager().logOut()
} catch let signOutError as NSError {
  print ("Error signing out: %@", signOutError)
}
Run Code Online (Sandbox Code Playgroud)

不要忘记import FBSDKLoginKit在使用它的班级添加