如何解决通过 Google Smart Lock 链接时 Firebase AuthUI 未加载 Google 数据
我正在编写我的第一个 Kotlin 应用程序并使用 Firebase 服务进行身份验证。我允许使用电子邮件链接和谷歌帐户(以及其他选项)登录。如果用户是使用 Google 帐户创建的,或者是通过调用 FirebaseAuth.getInstance().currentUser?.linkWithCredential(credential)
添加帐户,我将成功获取帐户名称和个人资料图片并将其添加到用户数据中。
奇怪的是,当我有一个基于 gmail 的用户但尚未链接到其各自的 Google 帐户时:我使用 Firestore 的 AuthUI 作为初始登录屏幕,它使用 Google Smart Lock。因此,当用户像描述的那样退出应用程序(或在他仍然注销时打开它)时,他会被带回初始屏幕(如果没有用户登录,它只会立即调用 AuthUI 屏幕)并显示“选择一个 帐户已通过 Google Smart Lock 保存”对话框。
如果他点击它是基于 gmail 的用户,Firebase 会自动将用户链接到 Google 帐户,但不会加载姓名和个人资料图片!他现有的个人资料照片将被删除,并显示一个没有姓名的关联 Google 帐户。
如果用户关闭对话框并在 AuthUI 登录屏幕本身中选择“使用 Google 登录” - 谷歌帐户也会自动链接,但在这种情况下它已正确连接(名称和个人资料图片加载到用户的 providerData)。我似乎找不到区别...
有人遇到过这个问题吗?有没有办法调试 Google Smart Lock 对话框的回调?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。