我已经开始使用Firebase,但我的经历非常糟糕。
我无法退出用户。
我尝试了不同的事情,花了我4天的时间来弄清楚如何退出用户但是没有明确的选择。
我想完全唱出用户,以便他们可以选择另一个Gmail帐户。
我试过下面的代码:
FirebaseUser user = firebaseAuth.getCurrentUser();
user.unlink(user.getProviderId()); FirebaseAuth.getInstance().signOut();
里面的
mAuth = FirebaseAuth.getInstance();//mAuth.signOut();
//auth fail olarsa mAuth.signOut(); sil sonra yerne qoy
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
答案 0 :(得分:1)
如果您查看Firebase Auth Quickstart示例代码,则Google提供商的退出包含以下步骤。
您在退出时是否致电Auth.GoogleSignInApi.signOut()
?所以,请使用此代码:
private void signOut() {
// Firebase sign out
mAuth.signOut();
// Google sign out
Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(
new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status) {
//do what you want
}
});
}
答案 1 :(得分:0)
您使用的是比我更新的版本,我怀疑它们是否引入了新的错误。您之前提到过NullPointerException
,因此我建议您确保传递给Auth.GoogleSignInApi.getSignInIntent
的GoogleApiClient不为空。
答案 2 :(得分:-1)
我也有这个问题,现在,LogoutBtn在抽屉里面,如下所示:
case R.id.initiates_logout:
if(FirebaseAuth.getInstance().getCurrentUser()!=null){
new AlertDialog.Builder(this)
.setTitle("Text1")
.setMessage("Text2")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
FirebaseAuth.getInstance().signOut();
LoginManager.getInstance().logOut();
}})
.setNegativeButton(android.R.string.no, null).show();
}
break;
我无法在退出后选择其他帐户。