我在 Android 上开发时遇到了这种有点奇怪的行为,在我用谷歌搜索时,我能找到的唯一答案是这是设计使然,我不应该关心它。
我的应用程序在活动时获取位置数据,我正要实现一种方法来节省电池电量,方法是在调用 onPause 事件时停止位置更新,然后在调用 onResume 事件时恢复获取。
在调试时,我注意到锁定手机时出现了这种奇怪的行为,onPause->onResume 被依次调用了三次或更多次,然后以 onStop 事件结束。我能找到的唯一答案是:这就是android的工作方式,没关系。
我想我很好奇,有人可以解释我需要多次停止和恢复一个简单的子活动吗?这不会消耗更多的电池,尤其是对于在 onResume 中有严重代码的大型活动?有没有办法防止这种情况发生?如果知道至少我在这些事件中的代码不会被调用,我会很高兴,也许有一个 if{} 块可以防止不必要的 CPU 周期。
非常感谢任何见解!