【发布时间】:2021-07-22 22:30:06
【问题描述】:
我的 MacBook Pro M1 更新到 Big Sur 11.3,iOS 模拟器更新到 14.5
现在我的 Flutter 项目,它使用 Firebase 身份验证并且过去工作得很好,在模拟器和 iOS 设备(iOS 14.5)上都显示出混乱的身份验证行为:
- 我以 UserA 身份登录,authStateChanges 没有触发
- 我以 UserB 身份登录,authStateChanges 被触发 - 一切正常
- 我重新启动应用程序 (VSCode),然后我发现自己回到了登录屏幕,因为 authStateChanges 返回 null(firebaseUser = null,请参阅代码)
测试 firebase_auth: ^1.0.0 和 firebase_auth: ^1.1.2
示例代码(以前可以正常工作):
FirebaseAuth.instance.authStateChanges().listen((User firebaseUser) {
// if null goto login screen, otherwise goto user screen
});
正在下载 iOS 14.4 模拟器 - 以便在其上测试我的应用程序...
更新: 所以我在 iOS 14.4 模拟器上看到了同样的行为。 我的 Firebase 身份验证设置是否有可能发生了变化? 这是什么原因造成的?
更新 2: 在我的 iPhone 上以发布模式测试,我看到了相同的行为: 杀死我的应用程序后,我发现自己回到了登录屏幕...... 所以很明显是一个新的编译版本导致了这个,但我不知道它是什么......
更新 3: 刚刚恢复到我的代码的 2 周前版本,仍然是同样的问题! 所以我开始认为这不是代码问题,而是 Mac 配置问题 - 可能是 Big Sur 11.3,也可能是新的 Flutter 版本 (2.0.5) 很郁闷...
【问题讨论】:
-
我遇到了同样的问题,这是 1.1.2 版本的问题。 github.com/FirebaseExtended/flutterfire/issues/5952
-
现在仍然对我有用...更改为 1.0.4(核心)和 1.1.1(身份验证)版本,进行了所有清理,并从模拟器中删除了所有内容。仍然遇到同样的问题
标签: firebase flutter firebase-authentication