JSQMessagesViewController + 火力地堡 (3.4.0)

JSQMessagesViewController + Firebase (3.4.0)

我最近将我的项目从 Firebase (2.5.1) 更新为 Firebase (3.4.0),方法是在我的项目中安装以下内容播客文件:

豆荚 'Firebase/Database'

豆荚 'Firebase/Core'

豆荚 'Firebase/Auth'

话虽如此,我根据 FirebaseDatabase 文档更新了我的项目,因为我的应用程序主要使用实时数据库和身份验证。

目前我遇到了一些非常棘手的错误,我无法解决以下问题:

private func observeMessages() {
    let messagesQuery = messageRef.queryLimitedToLast(25)
    messagesQuery.observeEventType(.ChildAdded, withBlock: { snapshot in

        let id = snapshot.value!["senderId"] as! String
        let text = snapshot.value!["text"] as! String

        self.addMessage(id, text: text)

        self.finishReceivingMessage()
    })
}

I've tried fixing it to the best of my ability to no avail and my app keeps crashing due to this

当我的 podfile 中有 Firebase (2.5.1) 时,我没有遇到这个问题,所以我确定它归因于新的更新。

如果有人可以就如何解决此错误向我提出建议,请随时发表评论并提供与此问题相关的任何建议。谢谢你。

8/25/16

解法:

private func observeMessages() {
    let messagesQuery = messageRef.queryLimitedToLast(25)
    messagesQuery.observeEventType(.ChildAdded) { (snapshot: FIRDataSnapshot!) in
        if let id = snapshot.value!["senderId"] as? String, text = snapshot.value!["text"] as? String {
        self.addMessage(id, text: text)
        self.finishReceivingMessage()
      }
    }
  }

解法:

private func observeMessages() {
let messagesQuery = messageRef.queryLimitedToLast(25)
messagesQuery.observeEventType(.ChildAdded) { (snapshot: FIRDataSnapshot!) in
    if let id = snapshot.value!["senderId"] as? String, text = snapshot.value!["text"] as? String {
    self.addMessage(id, text: text)
    self.finishReceivingMessage()
      }
    }
  }