Swift中一个函数中的多个注销方法
我想知道在一个函数调用中捆绑两种注销方法(Facebook和Google)是否可行?我有一个注销按钮,当一个facebook用户注销facebook时,当然还有当一个Google用户登录时,注销Google。还是应该在注销函数中创建一个条件?谢谢你的帮助Swift中一个函数中的多个注销方法,swift,firebase,firebase-authentication,facebook-login,google-signin,Swift,Firebase,Firebase Authentication,Facebook Login,Google Signin,我想知道在一个函数调用中捆绑两种注销方法(Facebook和Google)是否可行?我有一个注销按钮,当一个facebook用户注销facebook时,当然还有当一个Google用户登录时,注销Google。还是应该在注销函数中创建一个条件?谢谢你的帮助 // handle sign out function func handleSignOut() { let firebaseAuth = FIRAuth.auth() do {
// handle sign out function
func handleSignOut() {
let firebaseAuth = FIRAuth.auth()
do {
try firebaseAuth?.signOut()
} catch let signOutError as NSError {
print ("Error signing out: %@", signOutError)
}
// facebook sign out
UserDefaults.standard.setIsLoggedIn(value: false)
FBSDKLoginManager().logOut()
print("did log out of facebook...")
// google sign out
UserDefaults.standard.setIsLoggedIn(value: false)
GIDSignIn.sharedInstance().signOut()
print("did log out of Google...")
if FIRAuth.auth()?.currentUser == nil {
let loginController = LoginController()
present(loginController, animated: true, completion: nil)
}
}
这样做应该不会有太多问题,但会降低代码的效率,因为即使在用户注销一次之后,Firebase仍会检查其他类型的用户是否已签名。同样,这不应该是一个太大的问题,但是在函数中使用条件的好处大于缺点。不管怎样,做有条件的是很容易的