地理围栏如何比定期检查位置更准确?

Posted

技术标签:

【中文标题】地理围栏如何比定期检查位置更准确?【英文标题】:how geofencing can be more accurate than checking location at regular intervals? 【发布时间】:2019-03-03 20:59:29 【问题描述】:

我不明白geofencing 如何比定期检查位置 (https://codelabs.developers.google.com/codelabs/background-location-updates-android-o/index.html?index=..%2F..%2Findex#6) 更准确?因为假设我在位置 x 并且我设置了 250m 的地理围栏,所以一旦用户离开这个地理围栏,我就会存储新位置,然后我设置一个 250m 的新地理围栏等等。

这与使用 250m 的 smallestDisplacement 执行 mFusedLocationClient.requestLocationUpdates 最终不一样吗?我不明白地理围栏会比mFusedLocationClient.requestLocationUpdates使用更少的电池

【问题讨论】:

【参考方案1】:

从您发布的链接来看,我不认为它们意味着地理围栏比定期检查位置服务更准确。该用例仅适用于特定的感兴趣领域。它还指出,地理围栏提供了一种更高效的方式来“获取这些通知”。这只是说,当用户进入或离开某个区域时,该 api 会提供通知。

这是一个用例:

一位用户正在城市中漫步,距离一家星巴克不到 500 米。当用户进入地理围栏(500 米内)时,星巴克应用程序会向用户发送折扣饮品通知。这样一来,星巴克就不会不断跟踪用户以查看他们是否靠近他们的一家商店。

【讨论】:

但是请解释一下,如果“系统”不经常跟踪用户的位置,他怎么知道您进入/退出地理围栏?那么为什么使用地理围栏会消耗更少的电池呢? 您提供的链接中的示例地理围栏项目提供了一个很好的示例。他们使用 BroadcastReceiver 和 PendingIntent 的组合来启动后台服务以提供位置更新。交付更新后,该过程及其相关的所有内容都会终止。与维护前台服务以保持位置更新处于活动状态相比,这消耗的电池更少。【参考方案2】:

我不明白地理围栏如何比定期检查位置更准确

谁说地理围栏比查看位置更准确?不断请求位置,例如在 1Hz 的速度下是超级准确的,唯一更准确的方法是在 100Hz 下做同样的事情。

但你会在大约一个小时左右的时间里宰掉电池。

地理围栏尝试尽可能准确地不消耗您的设备电池。如果有效?去图吧。

【讨论】:

以上是关于地理围栏如何比定期检查位置更准确?的主要内容,如果未能解决你的问题,请参考以下文章

反向地理编码位置:比范围更准确

地理位置 Firefox 比 iPhone Safari 准确吗?

在后台更新低准确度的地理围栏,以高精度更新地图上的位置,无法按预期工作

Windows 上的 HTML5 地理位置比 Linux(Firefox、Chrome、[Chromium])更准确

Android 地理围栏 PRIORITY_HIGH_ACCURACY 不准确

Android:提高地理围栏的准确性