【问题标题】:I do not get geofence notifications我没有收到地理围栏通知
【发布时间】:2014-04-21 05:09:08
【问题描述】:

我正在编写一个 Android 应用程序,当他进入特定区域时通知用户。为此,我使用了 Android 的 Geofence API。

我已经尝试过 Google 的 GeofenceDetection 示例,但应用程序根本没有收到通知。

我调用 addGeofences,并收到 statusCode 0 的 onAddGeofencesResult 通知,所以一切似乎都工作正常,但是当我步行(或开车)进出地理围栏(半径为 5m 或 50m)时,什么也没有发生。

我使用 Nexus4 和 Eclipse - 都更新到最新版本。

为什么我没有收到地理围栏通知?

【问题讨论】:

  • 您的设备设置中是否启用了 GPS 接收器?你有信号吗?有许多 GPS 测试应用程序将向您展示您的修复有多好。您是否正在运行任何可以覆盖真正 GPS 提供商的模拟 GPS 应用程序?
  • GPS 工作正常 - 我可以从中读取位置,并且导航器工作正常。我不使用模拟位置
  • 你能分享你的广播接收器或 InstentService 类代码吗???

标签: android android-geofence


【解决方案1】:

我发现 GeoFencing API 从不智能地从 GPS 硬件检索位置。 GeoFence API 将观察操作系统提供的最准确位置,或者如果当前没有可用位置,它将导致从 Wifi / Cellular 计算位置。 (这很糟糕,因为蜂窝网络非常不准确,而且 wifi 经常不可用)

因此,要从地理围栏 API 中获得所有响应性或准确的结果,您必须设置地理围栏,然后每隔一段时间轮询 GPS 硬件,甚至不对收到的结果做任何事情,这样您就可以在表面之下为操作系统提供有价值的数据。

此行为未记录在案 - 感谢 Google!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多