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();
}
}
};