#ios #swift #google-cloud-firestore
#iOS #swift #google-облако-firestore
Вопрос:
Дизайн моего приложения заключается в том, что пользователи размещают флажок на карте, и этот флаг получает собственное местоположение и заносится в базу данных.
Когда пользователь открывает приложение, я хочу загрузить список всех флагов, которые находятся ВСЕГО в 1 км от них.
Я могу загрузить все флаги и выполнить if
инструкцию, чтобы проверить, находится ли местоположение на расстоянии 1 км в этом цикле for, и просто добавить его к списку флагов, которые будут перечислены.
Как я могу перечислить только флаги, которые находятся на расстоянии 1 км, без снижения производительности и загрузки данных флага, который даже не будет добавлен? Я использую Firestore. Я не думаю, что этот тип запросов возможен.
Комментарии:
1. К сожалению, Firestone не предлагает географические запросы. Таким образом, для этого нет простого решения.
2. @VictorPro Я выполняю вычисления в самом цикле for, чтобы вычислить расстояние между текущим местоположением пользователя и местоположением флага. Нет способа выполнить вычисления с помощью запросов? 🙁
3. @zyne вы пробовали GeoFirestore? github.com/imperiumlabs/GeoFirestore-iOS