我知道它已经被提出了,但是我想清除并总结一下。
我使用FireBase身份验证来进行以下注册:
使用电子邮件进行注册后,后来又决定要将凭据更改为 Facebook (具有相同的电子邮件),则会收到错误消息。从 Google 到 Facebook 。
错误:
已经存在一个具有相同电子邮件地址但不同的帐户 登录凭据。使用与此相关的提供商登录 电子邮件地址。
但是,如果您使用 Facebook 或电子邮件登录,则可以将凭据更改为Google。
但是,这意味着(据我了解),Firebase身份验证将为每个附加凭据生成一个唯一的用户ID ,这意味着如果您使用UserID来跟踪用户数据(消息,得分等)。 。),您需要以某种方式跟踪所有凭据中的所有UserID。这可能会破坏Firebase身份验证目的之一。
如果您决定采用这种方式,则需要使用LinkWithCredentialAsync关联帐户。据我了解,只有使用其他凭据登录后才能完成此操作。
我之所以提出这一建议,是因为只有在实施Firebase之后才发现这一点,我对此感到失望。
此线程Stackoverflow线程的解决方案很有创意(请参阅pupadupa方案),但是我不想走这种方式。
如果有人可以添加到此内容并找到某种解决方案,请发布它。