Flutter 如何将Flatter中的firebase匿名用户迁移到经过身份验证的用户

Flutter 如何将Flatter中的firebase匿名用户迁移到经过身份验证的用户,flutter,firebase-authentication,Flutter,Firebase Authentication,在我的应用程序中,用户可以作为来宾用户登录。我想用电子邮件和密码或谷歌对来宾用户进行身份验证。身份验证后,用户id应保持不变。如何做到这一点?要将匿名帐户升级为具有凭据的帐户,请使用要使用的登录方法创建一个新帐户,然后如Firebase文档所示 因此,在flatter中,您可以使用相关身份验证提供商的getCredential方法(例如or),然后调用匿名用户对象。关于电子邮件密码验证呢?如何从电子邮件密码注册中获取authCredential?我强烈建议您浏览我已经注册的文档链接,因为从中可以

在我的应用程序中,用户可以作为来宾用户登录。我想用电子邮件和密码或谷歌对来宾用户进行身份验证。身份验证后,用户id应保持不变。如何做到这一点?

要将匿名帐户升级为具有凭据的帐户,请使用要使用的登录方法创建一个新帐户,然后如Firebase文档所示


因此,在flatter中,您可以使用相关身份验证提供商的
getCredential
方法(例如or),然后调用匿名用户对象。

关于电子邮件密码验证呢?如何从电子邮件密码注册中获取authCredential?我强烈建议您浏览我已经注册的文档链接,因为从中可以很容易地找到其他提供商。以下是通过电子邮件+密码登录获取凭据的方法:@FrankvanPuffelen您可以展开吗?现在我已经连接了它们,匿名用户不包含经过身份验证的用户的电子邮件/displayName/photoUrl。调用
linkWithCredential
也不会触发
FirebaseAuth.instance.onAuthStateChanged
,因此用户链接其帐户的UI中没有可见的更改。我只希望从
linkWithCredential
返回的
AuthResult
用户成为流中的新用户。如果你愿意,我可以问一个新问题。听起来像是一个新的(虽然相关)问题,所以请以这样的方式发布。这也会给其他人一个回答的机会。