2017-06-19 58 views
1

我已经使用Firebase身份验证用户注册方法创建了注册方法。如何通过在android studio中使用firebase auth来删除注册用户?

如何使用firebase auth和android studio删除注册用户?

private void registerUser(){ 
      String email = editTextEmail.getText().toString().trim(); 
      String password = editTextPassword.getText().toString().trim(); 


firebaseAuth.createUserWithEmailAndPassword(email,password) 
      .addOnCompleteListener(this, new OnCompleteListener<AuthResult>(){ 

       @Override 
       public void onComplete(@NonNull Task<AuthResult> task) { 
        if(task.isSuccessful()){ 
         //user successfully registered and logged in 
         Toast.makeText(MainActivity.this, "Registered Successfully",Toast.LENGTH_SHORT).show(); 
         progressDialog.dismiss(); 
         finish(); 
         startActivity(new Intent(getApplicationContext(),ProfileActivity.class)); 

        }else{ 
         Toast.makeText(MainActivity.this, "Could Not Register. Please Try Again Later",Toast.LENGTH_SHORT).show(); 
         progressDialog.dismiss(); 
        } 
       } 
      }); 

} 
private void deleteUser(){ 

    // TODO: Fill this method 

} 

回答

2

您可以使用delete()方法从Firebase中移除所需的用户。请使用此代码:

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser(); 
AuthCredential credential = EmailAuthProvider.getCredential("[email protected]", "password1234"); 

user.reauthenticate(credential).addOnCompleteListener(new OnCompleteListener<Void>() { 
    @Override 
    public void onComplete(@NonNull Task<Void> task) { 
     user.delete().addOnCompleteListener(new OnCompleteListener<Void>() { 
      @Override 
      public void onComplete(@NonNull Task<Void> task) { 
       if (task.isSuccessful()) { 
        Log.d(TAG, "User account deleted."); 
        } 
       } 
      }); 

    } 
}); 

希望它有帮助。

+0

谢谢你的帮助。你可以告诉我,根据userId我怎么能从数据库中删除数据 – HemalHerath

+0

这个问题是不相关的第一个。因此,为了回答它,请发布另一个新问题,以便我和其他用户可以帮助您。 –

+0

当我使用该方法用户被删除,但应用程序不幸的是得到停止并重新启动。 – HemalHerath

相关问题