当我添加我的firebase代码时,我得到了自治:
class AppDelegate: UIResponder, UIApplicationDelegate { THREAD 1 SIGNAL SGABRT
我从View Controller脚本中取出了所有与Firebase相关的代码,它运行顺畅,没有任何错误。我正在使用swift 3并尝试更新我的pod,但也没有成功。这是我决定导致错误的代码。
var ref = FIRDatabase.database().reference()
这是在我的脚本的乞讨与所有其他声明。和...
ref.child("Agent1").observeSingleEvent(of: .value, with: { (snapshot) in
let value = snapshot.value as? NSDictionary
self.FnameA1 = value?["Fname"] as? String ?? ""
print("\(self.FnameA1)")
}) { (error) in
print(error.localizedDescription)
}
我试图从数据库中获取数据并将我的本地变量(FnameA1)设置为数据库中的字符串。虽然编译时没有错误,但我知道错误必须存在。我将在下面显示我的数据库的格式,以防错误来自我从中获取数据的方式。
{
"Agent1" : {
"Edition" : "Standard 17",
"Fname" : "L.",
"Lname" : "James",
"Ovr" : 95,
"Pos" : 3,
"Price" : 1000000
}
}
答案 0 :(得分:1)
您收到此错误是因为您在配置Firebase之前尝试使用de Firebase参考。在您的日志中,您应该看到类似这样的消息:
*** Terminating app due to uncaught exception 'FIRAppNotConfigured', reason: 'Failed to get default FIRDatabase instance. Must call FIRApp.configure() before using FIRDatabase.'
您可以先修改变量,然后再设置值(实际参考值)来解决此问题。
var ref : FIRDatabaseReference?
然后在你的函数中:
ref = FIRDatabase.database().reference()
ref.child("Agent1").observeSingleEvent(of: .value, with: { (snapshot) in
let value = snapshot.value as? NSDictionary
self.FnameA1 = value?["Fname"] as? String ?? ""
print("\(self.FnameA1)")