java - Firebase,删除用户时无法删除用户记录

标签 java android firebase firebase-realtime-database firebase-authentication

当我删除用户时,我无法删除他的记录。我知道哪些位置将被删除,但是当用户成功删除后,值仍然在数据库中。

.....
final String useruid=""+user.getUid();

//auth = FirebaseAuth.getInstance();
//user=auth.getCurrentUser();


 dialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
            if(checkBox.isChecked()){
                if (user != null) {

                    user.delete()
                            .addOnCompleteListener(new OnCompleteListener<Void>() {
                                @Override
                                public void onComplete(@NonNull Task<Void> task) {
                                    if (task.isSuccessful()) {
    FirebaseDatabase.getInstance().getReference().child("profileinfos").child(useruid).removeValue();
    FirebaseDatabase.getInstance().getReference().child("holograminfos").child(useruid).removeValue();


                                        Toast.makeText(Ayarlar.this, "Hesabınız başarılı bir şekilde silindi. ", Toast.LENGTH_SHORT).show();
                                       dialog.dismiss();
                                        startActivity(new Intent(Ayarlar.this, LoginActivity.class));
                                        finish();
                                    } else {
                                        Toast.makeText(Ayarlar.this, "Bir Hata Meydana Geldi.", Toast.LENGTH_SHORT).show();

                                    }
                                }});
                }
            }
            else
            {
                Toast.makeText(Ayarlar.this, "Onaylamak için lütfen kutucuğu seçiniz.", Toast.LENGTH_SHORT).show(); return;
            }
        }
    });

Thats my database.

没有异常(exception)。

最佳答案

您必须先从数据库中删除它,然后从经过身份验证的控制台中删除它,尝试以下操作:

FirebaseDatabase.getInstance().getReference().child("profileinfos").child(useruid).removeValue();
FirebaseDatabase.getInstance().getReference().child("holograminfos").child(useruid).removeValue();

    user.delete().addOnCompleteListener(new OnCompleteListener<Void>() {
                            @Override
                            public void onComplete(@NonNull Task<Void> task) {
                                if (task.isSuccessful()) {
     Toast.makeText(Ayarlar.this, "Hesabınız başarılı bir şekilde silindi. ", Toast.LENGTH_SHORT).show();
                                   dialog.dismiss();
                                    startActivity(new Intent(Ayarlar.this, LoginActivity.class));
                                    finish();
                                } else {
                                    Toast.makeText(Ayarlar.this, "Bir Hata Meydana Geldi.", Toast.LENGTH_SHORT).show();

                                }
                            }});
            }

关于java - Firebase,删除用户时无法删除用户记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48840330/

相关文章:

Java - 解压缩以不同方式压缩的文件

java - 如何为junit编写通用的tearDown方法?

android - Android Things 是否支持 Google Play 服务?

android - 数据未从 Android 应用程序保存到 Firebase

java 是 PSYoungGen 的停止世界事件

java - 如何用变量初始化 Java 对象?

firebase - google_sign_in 包中的 getServerAuthToken 返回 null

javascript - 数据更改时停止播放音频

java - 当我点击 ListView 项目时,应用程序崩溃,而不是打开另一个 Activity

android - Eclipse Android 项目因意外运行 XML 而中断