每 10 秒获取 PARTIAL_WAKELOCK

use*_*210 6 android coding-style power-management android-wake-lock

以 10 秒为间隔获取部分唤醒锁定的应用程序是否有任何问题。我的用例是能够通过设备加速度计持续监控用户的运动。基本上,我有一个每 10 秒由一次警报调用的服务。

该服务获取唤醒锁,从加速度计获取一些读数以确定当前的运动状态,然后释放唤醒锁。服务的总生命周期约为 4 秒。

我的理解是,这会导致设备每分钟保持唤醒约 24 秒。虽然不理想,但我希望这仍然是比在我的应用程序的整个生命周期中保持恒定唤醒锁更好的做法。

另一方面,在如此短的时间内获取和释放唤醒锁的行为是否可能对电池寿命同样不利?

任何输入表示赞赏。

Com*_*are 2

正如评论所表明的,这确实不是一个好主意。就像“市场上的一星评级”那样,这不是一个好主意。

加速度计设计用于跑步活动(例如游戏),仅此而已。它绝对不是为您正在尝试的模式而设计的。

您还假设设备将在您释放WakeLock. 这可能是真的,也可能不是。我怀疑您会发现您导致 CPU 开启的时间明显超过 40% 的可用时间,即使您只要求 CPU 开启 40%。

我强烈建议您观看Jeff Sharkey 在 2009 年 Google I|O 大会上关于 Android 电源使用情况的演示