Я пытаюсь загрузить всех пользователей в радиусе от пользователя, такого как Tinder или Bumble. Тем не менее, моя текущая функция не фильтрует по местоположению вообще.
Я посмотрел документы GeoFirestore и не совсем уверен, как решить эту проблему.
let geoFirestoreRef = Firestore.firestore().collection("users")
let geoFirestore = GeoFirestore(collectionRef: geoFirestoreRef)
let userCenter = CLLocation(latitude: userLat, longitude: userLong)
let radiusQuery = geoFirestore.query(withCenter: userCenter, radius: 1)
radiusQuery.geoFirestore.getCollectionReference().whereField("Age", isGreaterThanOrEqualTo: minAge).whereField("Age", isLessThanOrEqualTo: maxAge).getDocuments { (snapshot, err) in
if let err = err {
print("failed to fetch user", err)
self.hud.textLabel.text = "Failed To Fetch user"
self.hud.show(in: self.view)
self.hud.dismiss(afterDelay: 2)
return
}
let userDictionary = documentSnapshot.data()
let user = User(dictionary: userDictionary)
Я хочу получить всех пользователей в заданном радиусе; однако в настоящее время эта функция выбирает всех пользователей независимо от их местоположения. Есть предложения?