2017-03-10 4 views
0

私のfirebaseアプリケーションの唯一の認証形式はGoogleです。 GIDSignIn.sharedInstance().signOut()を使ってユーザをログアウトしようとすると、Firebaseはまだユーザがログインしていると言います。私は私のホーム画面に次のコードを持っている場合(ユーザーがログインした後、最初の画面)だから、「ユーザーがログインしている...」プリントアウトします:GoogleとFirebaseの認証関係にサインインしますか?

override func viewDidAppear(_ animated: Bool) { 
     GIDSignIn.sharedInstance().signOut() 
     FIRAuth.auth()?.addStateDidChangeListener { auth, user in 
      if let user = user { 
       print("User is logged in...") 
      else { 
       print("User not logged in..." 
      } 
     } 
} 

適切に行うユーザーをログインするためには私はGoogleのログアウトとfirebaseのログアウトの両方を行う必要がありますか?私は、次のコードが、利用可能な認証の唯一の形式を通じて、それらを明示的にログアウトしたにもかかわらず、ユーザーがログインしていると言う理由が不明です。

答えて

1

do { 
    try firebaseAuth?.signOut() 
} catch let signOutError as NSError { 
    print ("Error signing out: %@", signOutError) 
} 

適切にユーザーをログインさせるために、私はGoogleがサインアウトし、両方を行う必要がありますfirebaseサインアウト?

いや..あなたは...そこには内部接続を.Because両方をサインアウトしないように持っているので、あなたがグーグルからログアウトしたい場合は、他の一方でfirebaseコールfirebase APIからログアウトしたいならば、GoogleのAPIを呼び出します。

0

はい、GoogleのログアウトとFirebaseのログアウトの両方を呼び出す必要があります。

GIDSignIn.sharedInstance().signOut() 

firebase看板アウトのために::Googleはサインアウト用

関連する問題