【问题标题】:Android Geofencing: Trigger only while outside geofenceAndroid地理围栏:仅在地理围栏外触发
【发布时间】:2015-11-07 08:08:31
【问题描述】:

我正在制作一个地理围栏应用程序,它必须在设备位于地理围栏之外时不断触发通知,而不仅仅是在退出时。

我已经通过Google android developer training page 中给出的训练示例尝试使用地理围栏 API。但是,我只有在设备进入、停留或退出时才收到通知。

根据我迄今为止在 SO 和 google 中的研究,Geofencing API 中只处理了三种类型的转换:进入、停留和退出。并且通知仅在设备进入地理围栏时开始,直到它退出。

谁能帮我看看如何让它工作?

【问题讨论】:

    标签: android geofencing android-geofence google-geolocation


    【解决方案1】:

    那是不可能的。在地理围栏区域之外没有任何意义。这不是地理围栏的用例。

    您可以尝试指定更大范围的区域,然后检查地理坐标是否超出您想要的区域。

    【讨论】:

    • 感谢您分享您的想法。通过在 EXIT 转换期间调用一个单独的函数来解决,该函数达到预期目的。
    【解决方案2】:

    如果您想要自己的自定义退出触发器,则当您在围栏外时。您可以通过测量当前位置 (FusedLocationProvider) 和围栏位置(纬度、经度)之间的距离(纬度、经度)来编写自定义操作。

    您可以使用 Android Location API 中提供的以下方法来衡量差异并生成自定义触发器以指示您在围栏之外。

    通常这是你需要做的

    if[(位置差异)>(地理围栏的半径)] -> 自定义围栏动作退出

    1. distanceTo
    2. distanceBetween(在此处提供您当前的纬度、经度和围栏纬度、经度)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-01
      • 2017-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多