Swift + Firebase 模拟登录错误
Posted
技术标签:
【中文标题】Swift + Firebase 模拟登录错误【英文标题】:Swift + Firebase simulated login error 【发布时间】:2016-06-21 19:25:44 【问题描述】:ios 新手在最初由导师领导的应用程序的早期阶段苦苦挣扎。目前问题出现在登录视图控制器中:
override func viewDidAppear(animated: Bool)
super.viewDidAppear(animated)
let myRootRef = Firebase(url:"https://xxxx.firebaseio.com")
if myRootRef.authData.uid != nil
self.performSegueWithIdentifier("loginToGreet", sender: nil)
倒数第二行旁边的错误消息显示“线程 1:EXC_BAD_INSTRUCTION 和下面显示“致命错误:在展开可选值 (lldb) 时意外发现 nil”
当我们最初将项目上架时,这是可行的。下一段代码,如果重要的话:
@IBAction func loginPress(sender: UIButton)
let myRootRef = Firebase(url:"https://xxx.firebaseio.com")
myRootRef.authUser(self.patientLoginName.text, password:self.patientLoginPassword.text,
withCompletionBlock: error, authData in
if error != nil
// There was an error logging in to this account
print(error)
else
// We are now logged in
print(authData)
self.performSegueWithIdentifier("loginToGreet", sender: nil)
)
【问题讨论】:
你在哪一行得到错误 如果 myRootRef.authData.uid != nil 【参考方案1】:试试
if myRootRef.authData != nil
self.performSegueWithIdentifier("loginToGreet", sender: nil)
authData
可能为 nil,您正在检查 authData.uid。由于authData
为 nil,它会在 uid 访问时崩溃,因此请像上面一样更改错误检查。
【讨论】:
不确定你在那里做了什么,但它确实有效。谢谢!以上是关于Swift + Firebase 模拟登录错误的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Firebase 在 Android 模拟器上运行时在 PhoneGap 应用程序中返回 404 错误?
Firebase Firestore 模拟器错误`主机已在 settings() 和 useEmulator() 中设置,将使用模拟器主机`
Firebase 服务错误:端口 5000 未打开。无法启动功能模拟器
AngularFireAuth 模拟器登录在页面重新加载时丢失