在 Flutter 中使用 Firebase 然后(Instagram)进行正确的登录架构
Posted
技术标签:
【中文标题】在 Flutter 中使用 Firebase 然后(Instagram)进行正确的登录架构【英文标题】:Proper login architecture with Firebase then (Instagram) in Flutter 【发布时间】:2020-09-11 10:53:03 【问题描述】:让我解释一下我要做什么。我有一个使用 Firebase 对用户进行身份验证的应用。但是,当用户登录时,用户必须链接 Instagram 帐户才能继续(该应用程序使用 Instagram 数据进行操作)。问题不在于如何使用 Firebase 或 Instagram 进行实际登录,而在于如何构建我的应用程序以使工作流程正常工作。我当前的工作流程依赖于根页面侦听流中的 Firebase 用户更改,并根据情况返回相应的页面。这不是我真正想要的,原因有两个。 1) 坏了;这些页面实际上并没有在它们应该返回的时候返回(这可能是因为我在 StreamBuilder 中有一个 FutureBuilder ,所以它变得混乱了?)。但是,如果我重新加载应用程序,状态确实会发生变化,并且会加载正确的页面。 2)这样做我必须直接从创建帐户页面转到链接页面。我想返回登录页面,以便通过发送电子邮件在继续 Instagram 链接过程来确认帐户。总之,这是我正在尝试做的一些伪代码:
Root Page:
If user is logged in:
Go to Link Decider
Else:
Go to (Firebase) Login Page
Link Decider:
If user is logged in with Instagram:
Go to Home Page
If user has Instagram account linked to Firebase but is not logged in:
Go to Log in with Instagram Page
If user hasn't linked Instagram:
Go to Link Instagram Page
Instagram Link/Login Pages:
Do login then go to Home Page
抱歉,我刚刚尝试了很多东西,但似乎没有任何效果,所以我想其他人可能对如何做到这一点有更好的想法。如果您想查看一些具体的实现,我可以添加它,但我认为没有必要(因为我正在尝试以一种更好的方式来做到这一点,而不是修复我古怪的方式)。很感谢任何形式的帮助。谢谢!
【问题讨论】:
【参考方案1】:如果您想听听我的意见,请关注以下链接中的 Flutter Firebase 和 DDD 课程系列。我从这个网站学到了很多关于构建应用程序的知识 Flutter Firebase & DDD Course
【讨论】:
以上是关于在 Flutter 中使用 Firebase 然后(Instagram)进行正确的登录架构的主要内容,如果未能解决你的问题,请参考以下文章
Flutter firebase realtime db 在规则中使用 displayName
Flutter 和 Firebase:从 Firebase 中的数组中删除项目(地图)