1

如何将实时跟踪与flutter_map集成。有谁知道其中集成了哪个库?或如何实施?

4

2 回答 2

5

为了做到这一点,我们需要了解什么是实时位置跟踪。主要由以下几部分组成:

  • 正在广播的位置(被跟踪的位置)=> 第一方。
  • 这些位置更新的侦听器(观察者)=> 第二方。
  • 存储这些更改的地方,充当两方之间的中间地带。这是您的数据库。可以是 FireStore,也可以是传统数据库。

您的第一方必须知道或位置发生变化,并且当坐标发生变化时,它会将新坐标发布到您的数据库中。这可以使用您的位置包LocationGeolocator其他依赖项来完成。你听onLocationChanged

您的第二方将监视您的数据库,以获取任何发布的新坐标。理想情况下,它会使用 Flutter 中的流构建器,它通过服务器侦听来自数据库的事件流,或者更实际地,通过 FirebaseFirestore 流。

当您的第二方收到这些新坐标时,它将使用新收到的数据更新地图。您通过使用两件事来实现这一点:

  • 向地图添加标记,标记需要一个必需的LatLng参数。这是LatLng你刚收到的。
  • 您还必须为相机设置动画,以指向新收到的LatLng.

现在,只要位置发生变化,第一方就会上传数据,第二方会在上传数据后立即获取数据,并且您可以进行实时跟踪。实现它并不像你想象的那么难。

  1. 使用颤振谷歌地图。
  2. 如果您需要网络,请在您的平台、Android、iOS、JavaScript 的谷歌云控制台中启用谷歌地图 API。
  3. 安装您的位置依赖项。
  4. 更改时使用新坐标更新您的数据库。
  5. 根据非常清晰的文档,在您的第二方设备上构建您的地图小部件,并将其放入流构建器中。
  6. 使用新坐标更新此地图。

你得到一个位置跟踪系统。

于 2021-04-29T19:20:51.040 回答
1

它使用user_location_plugin

我不认为你想自己实现它。

于 2021-04-29T19:12:11.950 回答