Android delete()有时不起作用

Android delete()有时不起作用,android,firebase,firebase-realtime-database,firebase-authentication,Android,Firebase,Firebase Realtime Database,Firebase Authentication,我正在应用程序中设置帐户停用活动,但user.delete()方法有时不起作用 事实上,它有时起作用,有时不起作用,真是令人困惑。。。如果是逻辑错误,它不应该一直工作,对吗 这是我的密码 deactivateAccount.setOnClickListener(new View.OnClickListener() { final FirebaseUser user = mAuth.getCurrentUser(); @Override public void onCli

我正在应用程序中设置帐户停用活动,但
user.delete()
方法有时不起作用

事实上,它有时起作用,有时不起作用,真是令人困惑。。。如果是逻辑错误,它不应该一直工作,对吗

这是我的密码

deactivateAccount.setOnClickListener(new View.OnClickListener() {
    final FirebaseUser user = mAuth.getCurrentUser();

    @Override
    public void onClick(View view) {
        deletePosts();
        deleteComments();
        deleteLikes();
        deleteUser();
        user.delete().addOnCompleteListener(new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {

                Toast.makeText(DeactivateAccount.this, "You account has been deactivated",Toast.LENGTH_LONG).show();
                Intent loginIntent = new Intent (DeactivateAccount.this, LoginActivity.class);
                startActivity(loginIntent);

            }

        });


    }
deactivateAccount.setOnClickListener(新视图.OnClickListener(){
最终FirebaseUser=mAuth.getCurrentUser();
@凌驾
公共void onClick(视图){
deletePosts();
删除注释();
deleteLikes();
deleteUser();
user.delete().addOnCompleteListener(新的OnCompleteListener()){
@凌驾
未完成的公共void(@NonNull任务){
Toast.makeText(DeactivateAccount.this,“您的帐户已被停用”,Toast.LENGTH_LONG.show();
Intent loginIntent=新的Intent(DeactivateAccount.this,LoginActivity.class);
startActivity(登录);
}
});
}
没有错误,所以我也不知道如何调试它…但是deletePosts()、deleteComments()、deleteLikes()和deleteUser()方法都可以很好地工作…但是它会在“身份验证”选项卡中取消删除用户…他们的电子邮件仍然存在


非常感谢!

尝试设置您的意图,并调用startActivity()

方法

    // This listener will be called when there is change in FireBase user session
    FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() {
        @Override
        public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
            FirebaseUser user = firebaseAuth.getCurrentUser();
            if (user == null) {
                // user auth state is changed - user is null
                // launch login activity
                startActivity(new Intent(DeactivateAccount.this, LoginActivity.class));
                finish();
            }
        }
    };

尝试检查完成的任务是否成功(),如果不成功,则记录getException()。
    // This listener will be called when there is change in FireBase user session
    FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() {
        @Override
        public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
            FirebaseUser user = firebaseAuth.getCurrentUser();
            if (user == null) {
                // user auth state is changed - user is null
                // launch login activity
                startActivity(new Intent(DeactivateAccount.this, LoginActivity.class));
                finish();
            }
        }
    };