首页 > 解决方案 > 如何在没有 Identity Toolkit API 的情况下使 Firebase 身份验证完全工作

问题描述

我正在尝试在 Android 项目中使用 Firebase 创建电子邮件密码帐户。我使用 Android Studio 的 Firebase 助手添加了 Firebase。

创建用户代码如下。

mAuth.createUserWithEmailAndPassword(email, password)
            .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {
                        if (task.isSuccessful()) {
                            FirebaseUser user = mAuth.getCurrentUser();
                            onLoginUpdateUI(user);
                        } else {
                            System.err.println("message:\n" + task.getException().getMessage());
                            onLoginUpdateUI(null);
                        }
                }
            });

我输入了有效的电子邮件和密码(超过 6 个字符)我收到以下错误:

com.google.firebase.FirebaseException:发生内部错误。[Identity Toolkit API 之前未在项目中使用过或已禁用。通过访问https://console.developers.google.com/apis/api/identitytoolkit.googleapis.com/overview?project=启用它,然后重试。如果您最近启用了此 API,请等待几分钟让该操作传播到我们的系统并重试。]

我在https://console.firebase.google.com中启用了电子邮件/密码登录方法。

然后我去了https://console.developers.google.com并启用了 Identity Toolkit API。

然后身份验证正常工作。

我见过

最新版本的 Google Identity Toolkit 已作为 Firebase 身份验证发布。展望未来,Identity Toolkit 的功能工作将被冻结,所有新功能开发都将在 Firebase 身份验证上完成。我们鼓励 Identity Toolkit 开发人员在其应用程序可行的情况下尽快迁移到 Firebase 身份验证;但是,Identity Toolkit 将继续工作,并且不会在没有进一步公告的情况下被弃用。

所以我的问题是,如果他们要弃用 Identity Toolkit API,如何在没有 Identity Toolkit API 的情况下完全进行 Firebase 电子邮件/密码身份验证?

标签: androidfirebasefirebase-authenticationandroid-studio-3.1

解决方案


我必须在https://console.firebase.google.com中手动创建一个新的 Firebase 项目(不使用 Android Studio 中的 Firebase 帮助),并将 google-services.json 替换为新项目。它奏效了。


推荐阅读