代码之家  ›  专栏  ›  技术社区  ›  Mxwan

如何在注销时检索匿名帐户的数据?Firebase匿名身份验证

  •  0
  • Mxwan  · 技术社区  · 7 年前

    上下文

    在我的注册/登录活动中,用户可以匿名身份验证,我将他们的FirebaseID作为主键存储在我的数据库中。
    代码如下:

     anonymous_button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Task<AuthResult> resultTask = mAuth.signInAnonymously();
                resultTask.addOnSuccessListener(new OnSuccessListener<AuthResult>() {
                    @Override
                    public void onSuccess(AuthResult authResult) {
                        // Sign in success, update UI with the signed-in user's information
                        Log.d(TAG, "signInAnonymously:success");
                        FirebaseUser user = mAuth.getCurrentUser();
                        gotodownload_from_database();
                    }
                });
    

    发行

    如果我的用户注销,然后如果他们想以匿名身份登录,它将创建另一个帐户,他们将无法检索以前的匿名帐户。我如何才能检索他们的旧匿名帐户和他们的数据?谢谢

    1 回复  |  直到 7 年前
        1
  •  2
  •   Alex Mamo    7 年前

    您所说的只有在您注销、直接从Firebase控制台删除用户帐户或卸载应用程序时才会发生。因此,您可以使用Firebase匿名身份验证来创建和使用 暂时的 匿名帐户与Firebase进行身份验证,但 anonymous authentication accounts 不要在应用程序卸载时持久化。卸载应用程序时,本地保存的所有内容都将被删除,包括匿名文件 auth token 识别那个账户。 不幸的是,没有简单的方法可以为用户回收令牌 .

    相反,您应该鼓励所有用户使用受支持的帐户提供商完全登录( Google , Fabcebook Twitter 以此类推),这样他们就可以从所有设备登录,而不用担心数据丢失。