我想从我的当前位置获取附近商店的列表,并加上一些过滤条件和列表限制,例如 附近的商店,其可用性,真实性和清单0至15中的数据限制
我正在使用Firestore数据库获取距我的位置3公里以内的附近数据,但无法添加任何过滤器或分页
CollectionReference databaseReference = FirebaseFirestore.getInstance().collection("/shops");
geoFirestore = new GeoFirestore(databaseReference);
final List<Model> list = new ArrayList<>();
GeoQuery geoQuery = geoFirestore.queryAtLocation(new GeoPoint(89.86587, 56.1861717), 3);
geoQuery.addGeoQueryDataEventListener(new GeoQueryDataEventListener() {
@Override
public void onDocumentEntered(DocumentSnapshot documentSnapshot, GeoPoint location) {
Model model = documentSnapshot.toObject(Model.class);
System.out.println(model.getName());
list.add(model);
// ...
}
@Override
public void onDocumentExited(DocumentSnapshot documentSnapshot) {
// ...
}
@Override
public void onDocumentMoved(DocumentSnapshot documentSnapshot, GeoPoint location) {
// ...
}
@Override
public void onDocumentChanged(DocumentSnapshot documentSnapshot, GeoPoint location) {
// ...
}
@Override
public void onGeoQueryReady() {
System.out.println("All initial data has been loaded and events have been fired!");
if (list.size()>0){
System.out.println("Size: "+list.size());
}else {
System.out.println("Not found");
}
// ...
}
@Override
public void onGeoQueryError(Exception exception) {
System.err.println("There was an error with this query: " + exception.getLocalizedMessage());
// ...
}
});