我正在尝试将Firestore集合中的标记放入Google Map。我使用Geoflutterfire软件包进行查询。我假定我的应用程序已与数据库连接,但未显示任何标记。 我在https://pub.dartlang.org/packages/geoflutterfire上使用示例代码,但是我不需要所有功能。我只想查询数据库并在地图上显示标记。
不幸的是,我还不完全了解如何编写从Firestore数据库正确提取标记的代码。 “ MarkerOptions”命令周围也发生了很多事情。 GoogleMapsController的最新更新有些变化,所以我几乎完全困惑了。
似乎Geoflutterfire专注于通过应用程序创建标记并将其添加到数据库中,从而为标记提供特定的代码结构,这也可以在示例代码中看到。我通过将“位置”设置为地图类型来为此手动创建文档结构。
我正在初始化Firestore和Geoflutterfire。示例中的“ 查询地理数据”部分实际上很小,我想我缺少了 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前面,仅显示地图。该地图以悉尼市中心为中心,我在附近地区创建了一些地理位置,并将其存储在数据库中。