3

我正在编写一个使用 GPS 的 Android 程序。如果没有打开它会提示用户打开位置服务(我猜这相当于打开 gps ?)。我的问题是:gps 是否会在定位服务打开后立即开始消耗额外的电池电量,还是在查询/用于新位置时使用电池电量?

4

3 回答 3

9

GPS 仅在位置管理器请求更新时才开始工作。在设备中打开 GPS 仅允许程序在需要时请求位置,但这并不意味着 GPS 正在启动。

您可以自己测试:通知栏中的 GPS 图标告诉 GPS 状态。您可以打开 GPS,但图标不会出现。为什么?现在没有应用程序请求更新。一旦应用程序请求更新,图标就会开始闪烁(GPS 正在自行初始化),当它停止时,这意味着 GPS 已初始化并且当前正在接收更新。当此图标出现时GPS 才会消耗电池电量。

于 2012-12-03T13:46:30.313 回答
3

我的公司不久前写了一篇关于这个主题的博客文章。检查它是否有用。

http://www.littleeye.co/blog/2013/03/29/understanding-gps-resource-usage/

但是我们错过了讨论当没有应用程序实际请求位置更新时会发生什么。是的,如前所述,除非应用程序实际上要求更新位置,否则它们不会导致耗电。但请注意,即使是对位置更新的单个请求(取决于粗粒度或细粒度请求)也可能会产生意想不到的影响,因为设备必须经过各种状态才能恢复其稳定状态。

于 2013-06-25T03:00:41.867 回答
1

打开位置服务只是用户授予应用程序使用位置服务的权限。只要任何应用程序不要求位置,功耗与打开位置服务时相同。另一方面 - 有许多应用程序试图获取位置。Facebook、Camera、Android、许多广告库,所以是的——当 GPS 解锁时,用户可能会遇到电池寿命问题。

于 2012-12-03T13:42:18.087 回答