如何使用GeoFireStore Android检索范围内的FireStore用户

时间:2019-02-21 18:57:41

标签: android google-cloud-firestore geofirestore

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

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

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

它具有“输入密钥”,“移动键”,“查询就绪”,“查询错误”方法,但是我无法管理使用什么以及如何使用。我需要返回属于我定义范围内的文档(用户)的信息。这样,我可以向他们显示主要用户。

简而言之;有人可以帮助我了解geofirestore的事件监听器吗?

感谢您的宝贵时间。

1 个答案:

答案 0 :(得分:1)

花费了越来越多的时间之后,我终于用

解决了我的问题
  

public void onDocumentEntered(DocumentSnapshot documentSnapshot,GeoPoint位置){}

在GeoQueryDataEventListener界面中

。此方法以递归方式工作,直到满足查询的要求,然后将其放在onCreate中。我刚刚使用documentSnapshot.getId()列出了document_id,并使用mList.add(documentSnapshot.getId())将它们转移到arraylist中。希望这可以帮助别人照顾自己。