当手机靠近受监控的位置时,Android ProximityAlert 或 Geofence 是不是会消耗更多电量?

Posted

技术标签:

【中文标题】当手机靠近受监控的位置时,Android ProximityAlert 或 Geofence 是不是会消耗更多电量?【英文标题】:Does Android ProximityAlert or Geofence drain more battery when the phone is closer to a monitored location?当手机靠近受监控的位置时,Android ProximityAlert 或 Geofence 是否会消耗更多电量? 【发布时间】:2013-06-14 11:37:10 【问题描述】:

如果我使用具有给定半径(例如 100m)的 android ProximityAlert,并且我的手机经常靠近(或位于)该位置,与我很少靠近该位置相比,电池消耗会更大吗?是否存在电池消耗增加的距离?

用地理围栏怎么样?

理想情况下,我想了解以下情况对电池寿命的影响:

R = 接近警报或地理围栏区域的半径 D = 手机与proximityAlert 中的位置的距离

D D >> R(电话肯定在接近警报位置之外) D ~= R(手机靠近接近警报位置的边界)

是否有任何特定位置(即 D 或 D-R 的值),手机会自动将位置提供者更改为更昂贵的选项以提高准确性?

【问题讨论】:

我有两部相同的测试手机,用于测试不同场景下的电池寿命。目前,我已经在家里设置了一个位置,这意味着我总是处于 D 我休息一下,这是一个很难解决的问题(我的意思是手机寿命、电池寿命、其他运行的应用程序)。疯狂的。点赞。 好问题。我很想从谷歌那里听到更多关于注册地理围栏的电池寿命成本的信息。如果你有 1 个栅栏和 300 个栅栏,这也有区别吗? 【参考方案1】:

当您靠近地理围栏时,GPS 会更频繁地打开以检查用户“FINE_LOCATION”,当您不靠近受监控的位置时,手机会使用“COARSE_LOCATION”,它使用手机信号塔和 3g/4g网络以获取手机的当前位置。 “FINE_LOCATION”(需要 GPS)将比“COARSE_LOCATION”消耗更多的电量。

这就是我们需要在 Android Manifest 中同时设置 COARSE_LOCATION 和 FINE_LOCATIONS 的原因。

【讨论】:

当您说:“当您靠近地理围栏时,GPS 会打开”这是不正确的。在我的测试中,当您靠近围栏时,Android 不会打开 GPS。我知道这是因为 GPS 需要很长时间才能打开(最多 60 秒),并且状态栏中应该有一个图标指示 GPS 已打开。我在测试中没有看到这些东西。此外,我发现,当您进入 wifi 网络的范围内时,只要打开 wifi,Android 就可以非常准确(在 5 米内)。【参考方案2】:

如果关闭,接近警报将每隔 4 分钟启动一次 GPS,以更新您的位置。你可能没有意识到,但是在你的测试中添加一些东西,添加一个广播接收器来不断监控 gps 的状态,然后在 4 分钟内测试它

【讨论】:

以上是关于当手机靠近受监控的位置时,Android ProximityAlert 或 Geofence 是不是会消耗更多电量?的主要内容,如果未能解决你的问题,请参考以下文章

我需要实现一个颤振应用程序,当 2 部手机靠近时,它必须提醒 2 部手机 [关闭]

在 Android 中监控与多个位置的距离最省电的方法是啥?

监控我手机的位置

当两个用户/朋友彼此靠近时发出警报 - Android Proximity

android gps 没有显示正确的 lan 和 lon

iNotify 可以告诉我受监控文件的移动位置吗?