documentation によると、ユーザーにメソッドsignOut()
を使用してサインアウトさせます。
これは私が試したものです:
_var rootRef = firebase.database().ref();
var loggedInUser = firebase.auth();
1. firebase.signOut();
2. loggedInUser.signOut();
3. rootRef.signOut();
4. signOut();
5. firebase.auth.signOut();
_
上記の5つすべてについて_... is not a function
_を取得します。 firebase.database().ref();
およびfirebase.auth();
はエラーをスローしないため、新しいFirebaseへの参照に問題がないことはわかっています。また、コンソールでアプリを移行しました。
JavaScriptでは、次の方法でユーザーをログアウトできます。
firebase.auth().signOut().then(function() {
console.log('Signed Out');
}, function(error) {
console.error('Sign Out Error', error);
});
firebase.auth().signOut()
単にそれは私のために働く!
ユーザーをログアウトするにはいくつかの方法があります。
1。 FirebaseUI:参照
依存性を追加:
dependencies {
implementation 'com.firebaseui:firebase-ui-auth:4.0.0'
}
次に:
public void onClick(View v) {
if (v.getId() == R.id.sign_out) {
AuthUI.getInstance()
.signOut(this)
.addOnCompleteListener(new OnCompleteListener<Void>() {
public void onComplete(@NonNull Task<Void> task) {
// user is now signed out
startActivity(new Intent(MyActivity.this, SignInActivity.class));
finish();
}
});
}
}
2。 Kotlin:参照
Androidデフォルトの認証依存関係、ex:com.google.firebase:firebase-auth:16.0.1
firebase.auth().signOut().then(function() {
// Sign-out successful.
}).catch(function(error) {
// An error happened.
});
3。 Javaのデフォルト:
Androidデフォルトの認証依存関係、ex:com.google.firebase:firebase-auth:16.0.1
FirebaseUser user = mAuth.getCurrentUser();
if (user != null){
mAuth.signOut();
Toast.makeText(this, user.getEmail()+ " Sign out!", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "You aren't login Yet!", Toast.LENGTH_SHORT).show();
}
私が正しく理解したかどうかはわかりませんが、サインインしたすべてのユーザーをサインアウトしたい場合:コードが実行されているため、それは不可能ですクライアント上であり、認証状態はそれを実行しているクライアント。
サーバー側でコードを実行することになるため、firebase authサービスに接続されているすべてのクライアントにアクセスすることはできません。
ただし、セッションの期間を指定するオプションがあります。これは、authセクションのrememberパラメーターです。