Я пытаюсь получить строку (внутри объекта) в Firebase (используя Swift)
let currentDocument = db.collection("countries").document("United States")
currentDocument.getDocument { (document, error) in
if let document = document, document.exists {
let cities = document.data()!["cities"] as? [AnyObject] // This grabs data from a Firebase object named `cities`, inside the object there are arrays that have two pieces of data (e.g. ["cityName" : "New York", "currentTemperature" : 38])
for i in 0..<cities!.count {
let cityName = String(cities![i]["cityName"]!) // Here is where I get the error `Cannot invoke initializer for type 'String' with an argument list of type '(RemoteConfigValue)'`
}
} else {
print("Document does not exist")
}
}
После поиска этой ошибки обычные решения, которые я нашел, похожи на эти
Но даже после применения этих решений, например:
if let cityName = cities![i]["cityName"]! as? String {
print(cityName)
}
Я все еще получаю сообщение об ошибке типа Cast from 'RemoteConfigValue' to unrelated type 'String' always fails
Как мне решить эту проблему?