我正在尝试在应用尝试连接到firebase-realtime-database时检查错误。
我主要担心的是,当用户首次启动应用但没有互联网连接时。我创建了对数据库的引用,并尝试观察到一个事件,但是控制台日志开始抛出错误消息,并且我的代码没有捕获任何错误消息。
//------- variable declaration
var ref:DatabaseReference?
//------- inside de method
ref = Database.database().reference(withPath: "myPath")
ref?.observeSingleEvent(of: .value, with: { (snapshot) in
//I cannot even fire up the observer, so I never get here
}){(error) in
//no error is captured here also
}
即使我评论或删除了observeSingleEvent,我也可以看到控制台中抛出的错误,但是我想捕获它们。 有谁知道该怎么做?
预先感谢
答案 0 :(得分:1)
查询时脱机并不是“错误”。 SDK将在您的应用程序运行时继续尝试发出请求,并且您的代码在该位置附加了观察者。
如果要detect the connection state,则可以在/.info/connected
附加观察者,以获取指示连接当前状态的回调。请注意,此信息可能已过时,因为停滞的连接直到不久后才立即完全断开连接。