Это мой упрощенный код для наблюдения GeoFire: проблема в том, что наблюдаемые всегда вызываются только один раз, при начальном наблюдении, однако при вводе новых ключей функция наблюдения работает нормально, но блок завершения не вызывается.
func startObserveNearbyPosts(location: CLLocation) {
let geoFireQuery = geoFire?.query(at: location, withRadius: 100)
geoFireQuery?.observe(.keyEntered, with: { (key, _) in
print("Key entered")
})
geoFireQuery?.observeReady {
print("Observe ready")
}
}