与每 x 秒检查一次位置相比,地理围栏会降低功耗吗?

will geofence reduce power consumption vs just checking location every x seconds?

我正在创建一个位置跟踪应用程序,让用户绘制他们全天旅行地点的热图。这涉及不断查询用户位置的 gps,这是一项电池密集型操作。我认为降低应用程序功耗的一种方法是在几次位置更新后设置地理围栏 return 大致相同的值,并关闭位置更新直到用户退出地理围栏(表示他们再次在移动中)。

这将允许我的应用仅在用户实际移动时(由他们退出地理围栏触发)执行频繁的 GPS 查询。

但是,我不太确定这是否会降低功耗,因为如果通过不断查询用户的位置以查看他们是否移出围栏来触发地理围栏,它对电池。

所以我的问题是,地理围栏如何知道用户何时拥有 left/entered 区域?它是基于简单的定期位置查询吗?还是涉及一些更聪明的机制?谢谢!

link 到当前应用程序版本: https://play.google.com/store/apps/details?id=com.russ.locationalarm&hl=en

Android 处理地理围栏的方式非常复杂。设备之间存在许多差异, Android 版本之间也存在差异。但作为一个快速的答案,您的解决方案可以节省电池,因为检测区域出口不一定需要 GPS,但可以使用其他定位方法,如 Cell ID 或 Wifi,这些方法消耗的电池要少得多。您还需要知道地理围栏不是 100% 可靠性的解决方案,尤其是在区域退出事件(平均检测到的区域退出少于 50%)时,它不如区域进入事件可靠。 Herow、Radar、Foursquare 等一些公司正在构建专门管理地理围栏的 SDK。