当用户通过带有 Android 的地图中的特定位置时如何显示消息?

How to display a message when a user is passing a specific location from a map with Android?

我想在地图上添加 5 个标记(城市位置),每当用户经过附近时,我想向用户显示一条消息:You have just passed the first location, then second location and so on

我怎样才能做到这一点?我什至可以使用 Firebase?

好吧,由于问题细节相当不明确,以下是我个人将如何解决问题的相当宽泛的答案:

据我了解,问题分为以下几个部分:

  • 在地图上显示标记
  • 侦听用户位置
  • 比较用户位置与标记位置
  • 显示消息

在地图上显示标记

我假设您正在考虑使用 Google 地图 API 来这样做,因此我建议您查看以下内容:Adding a map with a marker

监听用户位置

侦听用户位置在以下文档中进行了说明:Location Strategies。列出了多种方法来说明如何获取用户位置,以满足您的特定需求。

比较用户位置与标记位置

我个人建议在这里使用您的 Noodle。我无法为您考虑所有问题,但您必须以某种方式存储并访问标记的位置坐标,以便与用户的位置更新进行比较。我还会跟踪 'checkpoint' 是否已被访问,以避免过度显示消息。

正在显示消息 最后但同样重要的是,消息的显示。我会使用 Toasts 向用户显示他们已通过检查点。一个聪明的方法是在 onLocationChanged 方法中发生这种情况,您必须重写该方法以侦听位置更新,并在比较位置方法告诉您时简单地显示祝酒词。

我个人认为不需要为此添加 firebase,因为不需要从数据库存储或获取数据。一切都可以在本地完成。

P.S。如果对您有帮助,请不要忘记将其标记为正确答案!