gpt4 book ai didi

ios - 身份验证后 Firebase uid 返回 nil (Swift)

转载 作者:搜寻专家 更新时间:2023-11-01 06:19:43 26 4
gpt4 key购买 nike

在我的应用程序中,一旦它打开,我就会检查用户是否已经在初始 View 的 viewdidload 中进行了身份验证。如果他们已经通过身份验证,我将执行一个 segue 到主视图。此时我什至将 uid 打印到日志中,并且打印正确。

override func viewDidLoad() {
super.viewDidLoad()


if ref.authData != nil {
let uid = ref.authData.uid
print(uid)

然后我稍后在应用程序中执行相同的操作,以便在用户单击其个人资料设置时获取用户的一些信息。我写了完全相同的代码来获取他们的 uid,但这次 uid 返回 nil 并因错误而崩溃

“ fatal error :在展开可选值时意外发现 nil”

这是 Firebase 还是模拟器问题?

编辑:这个问题只出现过两次。否则,代码本身会按预期运行,这让我想知道它是火力点还是模拟器问题。

最佳答案

您想使用 observeAuthEventWithBlock方法,这是一个实时身份验证监听器。

override func viewDidAppear() {
let ref = Firebase(url: "https://<YOUR-FIREBASE-APP>.firebaseio.com")

ref.observeAuthEventWithBlock({ authData in
if authData != nil {
// user authenticated
print(authData)
self.performSegueWithIdentifier("LoginToOtherView", sender: nil)
} else {
// No user is signed in
}
})
}

关于ios - 身份验证后 Firebase uid 返回 nil (Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36322592/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com