我正在查看以下文档:https://firebase.google.com/docs/auth/android/account-linking
第2步说不要经过FirebaseAuth.signInWith,因为我在第4步的mAuth.getCurrentUser()中得到了NullPointerException,因为没有登录的用户。
当我从应用程序注销时,我使用FirebaseAuth.getInstance()。signOut();
我的问题是:在用户从首先使用的auth方法注销后,是否可以链接2个身份验证提供程序(在我的应用程序中使用Google和电子邮件/密码)。如果我没有执行FirebaseAuth.getInstance()。signOut(),则在注销应用程序时将检测用户并在下次启动时直接进入。这意味着它永远不会选择其他提供商。
我正在寻找的逻辑:
反过来说:
到目前为止,我一直在使用电子邮件而不是UID,并在创建新的Firebase帐户之前检查数据库是否存在电子邮件。现在,我想切换到使用UID更有效地实施安全规则。