android - 节省android中gps服务消耗的电池电量

标签 android

我正在开发一个有两个 GPS 服务的应用程序。其中一项是位置跟踪,它每 2 分钟向服务器发送一次位置更新,另一项服务是 cyberseatbelt,它在位置更新时检查设备的速度。

使用这两项服务,我的手机显示电池消耗为 77%。如果没有这两项服务,则不会显示电池消耗情况。

是否有任何解决方案可以在保持所需功能的同时节省设备的电池电量?

最佳答案

你必须说出你做了什么让电池消耗如此之高。 (甚至不清楚电池是否在 1 分钟或 15 分钟或 1 小时后变为 77%)。

您如何访问 GPS?您是否正在运行一个处理程序/线程来定期轮询 GPS。如果是,这是错误的做法。您可以要求 Android 通知您位置变化。

GPS 服务通常非常耗费内存。您需要 GPS 服务还是只是寻找位置更新? Android 为基于位置的服务提供了一个很好的启动 doco。 http://developer.android.com/guide/topics/location/obtaining-user-location.html 尝试按照此 doco 中的步骤找到最佳用户位置。

确保在适当的时候停止收听更新。用户不会高兴一个应用程序即使在未运行时也试图耗尽电池电量。

尝试将应用程序作为后台任务......即服务或广播接收器

关于android - 节省android中gps服务消耗的电池电量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6567346/

相关文章:

java - 获取 AsyncTask 的返回值并使用它?

android - ImageView - 在其聚焦状态的顶部绘制半透明颜色?

android - 我究竟做错了什么?我的超时不起作用

android - 使用 ComposeRule 进行 UI 测试崩溃

javascript - 如何部署钛工作室制作的应用程序?应用商店和安卓市场都有。为此需要做哪些事情呢?

android - 如何保存系统重启时将被删除的临时数据

Java 覆盖 Android 中的 XML?

java - 使用 Android Studio 2.2.2 构建 Google map 示例项目

android - 限制对域的 Internet 访问

android:src attrs 用于自定义 View