Android:如何简单地创建地理围栏?

15

我刚接触Android开发,正在创建一个应用程序,允许用户为提醒创建特定位置的地理围栏。例如:在杂货店周围创建地理围栏,以便在用户进入时提醒他购买橙汁。

请问是否有任何教程可以帮助我开发这样的功能?


4
可能这正是你需要的功能。https://dev59.com/_lLTa4cB1Zd3GeqPYDLQ - zapl
2个回答

8
据我所知,关于地理围栏的教程并不多,但它很简单(假设您需要一个圆形的围栏)。
  • 这个教程 将告诉您如何获取用户的位置
  • 任何一个 这些链接都可以显示您如何计算其当前位置与其围栏中心点之间的距离。
  • 以常规时间间隔计算他们与中心的距离。我会让他们通过设置屏幕设置间隔,并从默认值开始约五分钟,因为任何大于此间隔将严重耗损电池。每次获取距离时存储该距离。
  • 如果他们的最后一次距离与新距离相比穿越了边界,请执行您的操作。例如,我曾经在开发一个应用程序,当孩子离开朋友家或到达学校时,会向父母发出警报。

1
定时检查电池问题是个好主意吗?如果应用程序处于后台状态甚至未运行,该怎么办?在这些情况下如何向用户发送推送通知? - EdGs
1
这绝对会消耗电池,但是当你通过LocationManager注册更新时,你必须指定更新之间的最短时间。你可以将该时间设置为非常长,并依靠更新之间的最小距离参数,但这样不能保证及时响应。如果你的应用程序是后台服务,除非用户的手机遇到严重的处理器拖延,否则不应该出现无法激活的问题。在任何情况下,如果你想要触发通知,你总是可以通过NotificationManager来实现。 - Ginger McMurray

0
最近开发了一个名为Proxim.io的新API,可以满足您的需求。网站是www.proxim.io。以下是开发者文档中的一句话:
Proxim.io是一个平台,用于向您的应用程序用户提供相关消息。这些消息基于实时位置、兴趣主题和地理触发器进行传递。消息可以通过Push发送到设备,也可以通过API(Web事件)路由到软件系统。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接