【问题标题】:How to send a location to Firestore and get places based on distance?如何将位置发送到 Firestore 并根据距离获取位置?
【发布时间】:2019-07-02 10:16:55
【问题描述】:

在我的应用程序中,我想发送(可能通过查询)一个用户的地理点 (userLocation),该用户的汽车发生故障并被困。作为回应,我想找回所有愿意联系被困用户的维修店。每个 Repair_Shop firestore 文档都包含他们的地理点 (shopLocation) 和一个以公里为单位的数字 serviceDistance,这是他们的服务半径 (serviceRadius)。我想回复 Repair_Shop 集合中满足 serviceDistance

我已通读 GeoFirestore 文档,但不太确定如何实施。自然无法在前端进行计算。但是我应该发送什么作为查询,如果可能的话,我应该在 Firestore API 上做什么,以便获得预期的文档快照?

谢谢。

【问题讨论】:

    标签: android google-cloud-firestore geofirestore


    【解决方案1】:

    单次地理查询无法做到这一点。原因很简单:北极可能有一家维修店愿意行驶 10,000 公里来维修搁浅的车辆。因此,您基本上总是必须请求所有商店,然后在客户端对它们进行排序/过滤。

    这个问题本质上是一样的:

    正如我在那里回答的那样,最好的选择是从一个合理的范围开始,然后查询该范围内的所有文档。如果这没有产生结果,请使用更大的范围再试一次。

    【讨论】:

    • 我一直在研究这个。我不知道是否存在明确的答案,但我认为通过 Google Cloud Functions 有可能,尽管很复杂。你怎么看?
    • 您在 Cloud Functions 中用于调用 Firestore 的 API 与您在其他地方调用的 API 没有显着差异。在 Android 中不可能的事情,在 Cloud Functions 中也不太可能实现。
    猜你喜欢
    • 1970-01-01
    • 2013-06-02
    • 1970-01-01
    • 2012-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多