【问题标题】:How to Retrieve FireStore Users Within a Range With GeoFireStore Android如何使用 GeoFireStore Android 检索范围内的 FireStore 用户
【发布时间】:2019-02-21 18:57:40
【问题描述】:

我目前正在开发一个程序,该程序需要使用 Android Studio 包含用户的位置。在我的用户集合中,我将位置信息作为每个用户文档的地理点。我需要获取圆半径范围内的所有用户。我为这个地理位置过程找到了 imperiumlabs -https://github.com/imperiumlabs/GeoFirestore-Android- 的 GeoFireStore。我可以设置和获取文档的位置(单个用户)。但我想定义一个中心并检查范围内是否有任何人。

据我了解,我需要按如下方式使用地理查询事件侦听器;

geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() {...}

它有 Key Entered、Key Moved、Query Ready、Query Error 方法,但我无法管理使用什么以及如何使用。我需要返回的文档(用户)信息(谁)在我定义的范围内。这样,我可以向他们展示主要用户。

对于简短的词;有人可以帮助我了解 geofirestore 的事件侦听器吗?

感谢您宝贵的时间。

【问题讨论】:

  • 请不要将解决方案作为您问题的一部分发布。而是将它们作为单独的答案发布,这也允许您将其作为答案接受(在系统中标记它)。见meta.stackexchange.com/questions/31809/…
  • 感谢您的警告。我编辑了我的问题。

标签: android google-cloud-firestore geofirestore


【解决方案1】:

花了越来越多的时间后,我终于解决了我的问题

public void onDocumentEntered(DocumentSnapshot documentSnapshot, GeoPoint location) {}

在 GeoQueryDataEventListener 接口中。这个方法递归地工作,直到满足查询的要求,我把它放在onCreate中。我刚刚使用 documentSnapshot.getId() 列出了 document_id,并使用 mList.add(documentSnapshot.getId()) 将它们转移到了一个数组列表中。希望这可以帮助有人照顾。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-26
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多