android - 如何在没有 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 电子邮件/密码身份验证?
解决方案
我必须在https://console.firebase.google.com中手动创建一个新的 Firebase 项目(不使用 Android Studio 中的 Firebase 帮助),并将 google-services.json 替换为新项目。它奏效了。
推荐阅读
- react-native - 我可以从 react-native-device-info 获得一些示例输出吗?
- visual-studio-code - 使用 Visual Studio Code 设置 Flutter
- scons - scons 别名导致 python 异常
- javascript - Javascript 堆栈具有相同名称的项目并仅获得最高和最低价格
- python - 无法根据规则“安全”将数组数据从 dtype('float64') 转换为 dtype('int32')
- php - htmlspecialchars 未按预期工作
- android - Android - 1个按钮的多个手指触摸
- mysql - 如何使用索引最好地连接表
- mysql - 导入 CSV 文件
- html - 如何向 htmlAttributes 添加其他属性?