Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 退出谷歌登录iOS无法在Flatter Firebase Flatter fire中工作_Flutter_Firebase Authentication_Flutter Ios - Fatal编程技术网

Flutter 退出谷歌登录iOS无法在Flatter Firebase Flatter fire中工作

Flutter 退出谷歌登录iOS无法在Flatter Firebase Flatter fire中工作,flutter,firebase-authentication,flutter-ios,Flutter,Firebase Authentication,Flutter Ios,在我的Flitter iOS应用程序中,Firebase退出Google失败。我使用以下行退出谷歌: await GoogleSignIn().signOut(); await FirebaseAuth.instance.signOut(); 然后我用苹果登录。但是,当我检查FirebaseAuth.instance.currentUser.providerData时,除了apple.com提供商之外,google.com提供商仍然存在。是否应该在GoogleSignIn().sign

在我的Flitter iOS应用程序中,Firebase退出Google失败。我使用以下行退出谷歌:

  await GoogleSignIn().signOut();
  await FirebaseAuth.instance.signOut();
然后我用苹果登录。但是,当我检查
FirebaseAuth.instance.currentUser.providerData
时,除了apple.com提供商之外,google.com提供商仍然存在。是否应该在
GoogleSignIn().signOut()
上删除此google.com providerData


编辑:我的期望是,
FirebaseAuth.instance.currentUser.providerData
将是当前登录的身份验证提供程序的列表。因此,我希望当我退出Google时,Google.com
providerData
条目将被删除。也许这个期望是错误的,如果是,我如何知道用户当前登录的提供商?因此,例如,如果我想获取用户名,我如何知道从哪个providerData中提取?

我的问题源于对
providerData
工作原理的误解。我认为它将包含当前登录的提供者。相反,它包含与Firebase中的用户关联的所有提供程序


为了记录用户名,我在登录过程中记录了用户名,当应用程序知道哪个提供商正在登录时。

请编辑问题,以更具体地说明什么没有按预期方式工作。如果登录的帐户链接到多个提供商,那么提供商数据中肯定会有多个条目,每个链接的提供商对应一个条目。感谢您对这个问题的反馈,@DougStevenson。我已经相应地更新了问题。您是如何实现providerData的?你能给我们看一下密码吗?你也必须注销firebase。FirebaseAuth.instance.signOut()。然后(。。。。