我在我的应用中使用了匿名登录。因此,每当用户打开应用程序时,都会通过新的匿名帐户登录。结果,尽管用户很少(大约4到5),但是我的 Firebase身份验证部分中有400多个登录帐户。这就是为什么我想在用户关闭应用程序时删除用户(匿名帐户)的原因。因此,我使用了
user.delete().addOnCompleteListener( new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText( Activity.this, "Deleted Successfully" , Toast.LENGTH_LONG).show();
}
else {
Toast.makeText( Activity.this, "Failed" , Toast.LENGTH_LONG).show();
}
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText( Activity.this, "Failed to delete" , Toast.LENGTH_LONG).show();
}
});
但是,问题是未显示吐司面包。那么,什么原因会导致此问题?我不知道该用户是否被删除。另外,如果可能的话,建议一些更好的方法来解决此问题。
答案 0 :(得分:0)
这不是使用匿名帐户的方式。它们应在应用程序启动期间持续存在,以便您存储的每位用户数据将继续与用户相关联。每当有应用程序后台运行时删除帐户肯定会给您和用户造成混乱。
如果您想采取措施清除未使用的帐户,则应使用一些后端代码,该代码使用Firebase Admin SDK并定期deletes old user accounts,无论您决定使该帐户“变旧”的标准。