【问题标题】:Does it saves battery when we stop using GPS in android当我们停止在android中使用GPS时它会节省电池吗
【发布时间】:2014-02-02 16:41:16
【问题描述】:

在我的 android 应用程序中,我想在应用程序关闭后关闭 GPS,但对于 android 4.x 设备是不可能的。因此,如果我们停止使用 GPS,只要它不是必要的“就像人从最后开始就在同一个地方几个小时”,但是 GPS 在移动设备中始终处于开启状态,那么它消耗的电池电量是否与我们使用 GPS 时(例如“当人移动时”)相同?

【问题讨论】:

    标签: android gps


    【解决方案1】:

    您需要区分 GPS 开启/关闭和应用程序使用/不使用 GPS。大多数用户在他们的设备上始终保持 GPS 开启。这只是一个允许应用程序在需要时使用 GPS 的权限。只要应用程序不主动使用 GPS,GPS 硬件单元仍处于关闭状态。当应用程序在LocationManager 注册位置侦听器时,Android 会打开 GPS 单元。用户将在状态栏的右上角看到“GPS 激活”图标。如果用户看到此图标,则表示将检测到位置并且 GPS 会消耗电量。

    要考虑的另一个方面是使用哪个位置提供程序。如果您使用“gps”位置提供程序,那么您将获得最准确的位置,但电池消耗将是最高的。如果您使用“网络”提供商,则位置不会那么准确,但功耗会少得多。

    回答您的问题。如果您在应用中取消注册位置侦听器,该应用肯定有助于节省电池电量。您无需为此关闭 GPS。

    【讨论】:

    • 当用户在同一个位置超过特定时间时,我们能否在 LocationManager 中取消注册位置监听器,当人们开始移动时我们再次注册位置监听器?
    • 没有开箱即用的功能,但您可以尝试使用 Google Play Services:developer.android.com/training/location/…
    【解决方案2】:

    如果您询问是否在不移动时开启 GPS 和在移动时开启 GPS 使用相同数量的电池,答案是肯定的。只要 GPS 处于开启状态,无论此人是否在移动,它都会检查位置。

    【讨论】:

    • 哦,谢谢,有什么方法可以在使用 GPS 的应用程序不运行时节省电池电量?
    【解决方案3】:

    我不同意 beworker 给出的答案,但我认为有更好的答案。更好的答案是使用新的 google play 位置服务。它更容易使用并且更准确。您不再需要担心使用哪个提供商。

    您所做的只是告诉它创建一个 locationRequest 对象,告诉它您想要什么精度以及您想要什么时间间隔或行驶距离参数,它会确定要使用哪个提供程序,并且还可以最大限度地减少电池使用量。现在使用 google play 真的很有意义。好多了。我在这里有一个完整的工作示例:

    https://github.com/nickfox/GpsTracker/tree/master/phoneClients/android

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多