我知道这是Cast from FIRRemoteConfigValue to unrelated type String always failed的副本。但公认的答案是它只是一个错误。
我认为不是。
根据另一种解决方案,每次检索或实例化变量时,我都必须强制转换数据类型。我希望找到一个不同而优雅的解决方案。
一切工作正常,但在我安装后Pod 'FirebaseRemoteConfig'
,我在每一行都收到此警告,我用收到的 Snapshot 值实例化一个变量。
从 FIRRemoteConfigValue 转换为不相关的字符串类型总是失败
当我运行我的应用程序时,它会在那里崩溃。
错误代码
FIRDatabase.database().reference().child("Posts").observe(.value, with: {(recievedSnap) in
if recievedSnap.exists(){
if let dict = recievedSnap.value as? [String:AnyObject]{
for each in dict{
let str = each.value["text"] as! String //Line of warning(and crash when the app is run)
}
}
}
})
工作代码
FIRDatabase.database().reference().child("Posts").observe(.value, with: {(recievedSnap) in
if recievedSnap.exists(){
if let dict = recievedSnap.value as? [String:AnyObject]{
for each in dict{
if let eachValue = each.value as? [String:AnyObject]{
let str = eachValue["text"] as! String
}
}
}
}
})
我正在寻找以下方面的解释:
安装后发生了什么变化
Pod 'FirebaseRemoteConfig'
,它开始给我这个错误?为什么每次初始化变量时都需要强制转换?
有更好的方法吗?