Когда вы выполняете GeoQuery
для базы данных Cloud Firestore и используете addGeoQueryDataEventListener()
, есть несколько методов, которые должны быть реализованы.Как и в вашем примере, один из этих методов называется onDocumentEntered()
.Как видите, у него есть два аргумента, первый из которых имеет тип DocumentSnapshot
.Этот объект содержит все объекты местоположений в вашем диапазоне.Чтобы отобразить эти местоположения, необходимо выполнить итерацию по объекту DocumentSnapshot
и получить все местоположения.
Чтобы отобразить все местоположения в RecyclerView
, сначала необходимо создать списокместах.Поэтому, когда вы выполняете итерацию, добавьте все объекты местоположения в список.Затем просто создайте адаптер и передайте этот список его конструктору.Установите адаптер на RecyclerView
, и все готово.
Если вы думали, что можете передать GeoQuery
объекту FirestoreRecyclerOptions
, как вы это обычно делаете при запросе к базе данных Cloud Firestore, обратите внимание, чтоэто невозможно, поскольку класс GeoQuery не расширяет com.google.firebase.firestore.Query
.