Android Firebase Auth:在应用程序中验证帐户并重置密码

Android Firebase Auth: verify account and reset password within the App

我正在创建一个应用 Firebase 作为后端。一切看起来都很顺利,但是有一些关于身份验证的问题。

  1. FirebaseUser.sendEmailVerification() 方法发送包含 link 的电子邮件,打开 INTERNET 浏览器。它工作正常,但是否可以在 App 中重定向和管理验证?浏览器在这个工作流程中似乎是多余的。

  2. 同样,FirebaseAuth.sendPasswordResetEmail([email])方法使用浏览器作为修改密码的界面。在应用程序中更改它会更方便。有办法吗?

您可以通过将 canHandleCodeInApp 设置为 true 的 ActionCodeSettings 选项,让 sendEmailVerificationsendPasswordResetEmail 将带有操作代码的 Firebase 动态链接直接发送到应用程序。在此处了解更多信息:https://firebase.google.com/docs/auth/android/passing-state-in-email-actions 在这种情况下,您需要检测传入的应用程序 link,使用 FDL 解析深度 link,获取操作代码和模式并构建您自己的 UI 以验证电子邮件或重置密码。您可以将本指南移植到 Android 以获得更多相关信息:https://firebase.google.com/docs/auth/custom-email-handler