Как создавать маркеры и управлять ими с помощью Geoflutterfire на Картах Google с Flutter - PullRequest
0 голосов
/ 18 апреля 2019

Я пытаюсь поместить маркеры из моей коллекции Firestore в карту Google.Я использую пакет Geoflutterfire, чтобы сделать запрос.Я предполагаю, что мое приложение связано с базой данных, но маркеры не отображаются.Я работал с примером кода на https://pub.dartlang.org/packages/geoflutterfire, но мне не нужны все функции.Я просто хочу сделать запрос к своей базе данных и выставить маркеры на моей карте.

К сожалению, я не полностью осведомлен о том, как написать код, который правильно извлекает маркеры из базы данных Firestore.Также много чего произошло вокруг этой команды "MarkerOptions".С последним обновлением в GoogleMapsController произошли некоторые изменения, поэтому я остался почти полностью сбит с толку.

Также кажется, что Geoflutterfire фокусируется на создании маркеров через приложение и добавлении их в базу данных, придавая им особую структуру кода, что также можно увидеть в примере кода.Я создаю структуру документа для этого вручную, устанавливая «положение» в качестве типа карты.

My Database

Я заранее инициализирую Firestore и Geoflutterfire.Раздел " Query Geo Data " в примере на самом деле довольно мал, и я предполагаю, что мне не хватает важной части в разделе stream.listen -команды

´´´

GeoFirePoint center = geo.point(latitude: -33.870663, longitude: 
151.206793);var collectionReference = _firestore.collection('syd_places');

double radius = 50; String field = 'position';

Stream<List<DocumentSnapshot>> stream = geo.collection(collectionRef: collectionReference)
    .within(center: center, radius: radius, field: field);

stream.listen((List<DocumentSnapshot> documentList) {
  // doSomething()
}); 

´´´

В настоящее время я сижу перед пустой GoogleMap, просто показывая карту.Карта центрирована по центру Сиднея, и я создал несколько географических точек в соседней области и сохранил их в базе данных.

...