【问题标题】:Android: Simple way to make a geofence?Android:制作地理围栏的简单方法?
【发布时间】:2012-08-15 06:25:41
【问题描述】:

我是 Android 开发新手,我正在创建一个应用程序,允许用户在特定位置周围创建地理围栏以进行提醒。例如:在杂货店周围设置地理围栏,以提醒用户进入时拿起橙汁。

有没有人知道可以帮助开发这样的东西的教程?

【问题讨论】:

标签: java android geolocation location location-based-service


【解决方案1】:

AFAIK 没有关于地理围栏的教程,但它非常简单(假设你想要一个圆形围栏)。

  • This tutorial会告诉你如何获取用户的位置
  • Any of these 链接将向您展示如何计算其当前位置与其围栏中心点之间的距离
  • 定期计算它们与中心的距离。我会让他们通过设置屏幕设置间隔,并从大约五分钟的默认值开始,因为除此之外的任何东西都会消耗大量电池。每次获取时都存储该距离。
  • 如果与新距离相比,他们的最后距离越过边界,请执行您的操作。例如,我开发了一个应用程序,如果孩子离开朋友家或到学校,它会提醒家长。

【讨论】:

  • 及时检查(电池问题)是个好主意吗?如果应用程序“后台”或什至没有运行怎么办。在这些情况下,您将如何向用户推送通知?
  • 这肯定会消耗电池电量,但是当您通过 LocationManager 注册更新时,您必须指定更新之间的最短时间。您可以使该时间变得非常大,而是依赖于更新参数之间的最小距离,但不能保证以这种方式及时响应。如果您的应用程序是后台服务,除非用户的手机遇到严重的处理器拖累,否则您不应该遇到它不活动的问题。在任何情况下,如果您想要这样做,您始终可以通过 NotificationManager 触发通知。
【解决方案2】:

您可以使用 Google IO 2013 上发布的新 GeoFence 类:

http://developer.android.com/reference/com/google/android/gms/location/Geofence.html

【讨论】:

    【解决方案3】:

    【讨论】:

      【解决方案4】:

      最近开发了一个名为 Proxim.io 的新 API,可以满足您的目的。该网站是 www.proxim.io。以下是开发者文档中的引述:

      Proxim.io 是一个向您的应用程序用户提供相关消息的平台。基于实时位置、感兴趣的主题和地理触发器传递的消息。消息可以通过 Push 传递到设备,也可以通过 API(Web 事件)路由到软件系统。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-22
        • 1970-01-01
        • 2015-11-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多