如何在没有Identity Toolkit API的情况下使Firebase身份验证完全起作用

时间:2018-07-02 10:15:54

标签: android firebase firebase-authentication android-studio-3.1

我正在尝试使用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 Authentication上完成。我们鼓励Identity Toolkit开发人员在实际应用中尽快转向Firebase身份验证;但是,Identity Toolkit仍可继续使用,并且在没有另行通知的情况下不会被弃用。

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

1 个答案:

答案 0 :(得分:1)

我不得不在https://console.firebase.google.com中手动创建一个新的Firebase项目(不使用Android Studio中的Firebase辅助工具),并将google-services.json替换为新的Firebase项目。而且有效。