Moja aplikacja może więc logować się w Google. Po kliknięciu przycisku udostępnianego przez Google otwiera się widok internetowy i użytkownik wprowadza swoje dane uwierzytelniające. Po zezwoleniu aplikacji na dostęp do swoich informacji, aplikacja następnie podpisuje użytkownika i zmienia SignInViewController na TabBarController (gdzie mogą teraz współdziałać odpowiednio).Jak się wylogować z Google po uwierzytelnieniu
Gdy użytkownik naciśnie przycisk Wyloguj, zostanie skierowany na ekran logowania, jak można się spodziewać. Ale dziwne jest to, że jeśli użytkownik naciśnie przycisk Google ponownie, zostaną automatycznie zalogowani bez dalszego uwierzytelniania i bez opcji usuwania ich konta. Czy jest to sposób na usunięcie poświadczeń konta Google, aby chronić użytkowników przed przypadkowym kradzieżą?
Zaloguj się funkcji:
func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {
if let error = error {
print(error.localizedDescription)
return
}
let authentication = user.authentication
let credential = FIRGoogleAuthProvider.credentialWithIDToken(authentication.idToken, accessToken: authentication.accessToken)
FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in
// ...
SignInViewController().signedIn(user)
}
// ...
}
Zaloguj się funkcja:
func signOutOverride() {
do {
try! FIRAuth.auth()!.signOut()
CredentialState.sharedInstance.signedIn = false
// Set the view to the login screen after signing out
let storyboard = UIStoryboard(name: "SignIn", bundle: nil)
let loginVC = storyboard.instantiateViewControllerWithIdentifier("SignInVC") as! SignInViewController
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.window?.rootViewController = loginVC
} catch let signOutError as NSError {
print ("Error signing out: \(signOutError)")
}
}
próbowałeś GIDSignIn.sharedInstance() .signOut() –
Dziękuję, to działało! – About7Deaths
Serdecznie zapraszamy –