Android 背景加速度计

Android 背景加速度计,android,Android,我正在开发一个Android应用程序,目的是在后台监控加速计数据。我自己的设备运行的是安卓2.2。当设备锁定时,它不再收集加速计数据。我知道部分唤醒锁定选项,但由于我的应用程序的性质,它并不理想 我在这件事上做了相当多的谷歌搜索。有人说这是一个错误,这是无意的。然而,有人说这是有意的。我还读到2.3.3中修正了这一点。如果是这样,我将升级我自己的设备。 然而,页面上的评论似乎与此相矛盾 我相信使用部分唤醒锁会很快耗尽电池电量。有没有其他方法可以实现我想做的事情,或者有没有人知道解决这个问题的方法

我正在开发一个Android应用程序,目的是在后台监控加速计数据。我自己的设备运行的是安卓2.2。当设备锁定时,它不再收集加速计数据。我知道部分唤醒锁定选项,但由于我的应用程序的性质,它并不理想

我在这件事上做了相当多的谷歌搜索。有人说这是一个错误,这是无意的。然而,有人说这是有意的。我还读到2.3.3中修正了这一点。如果是这样,我将升级我自己的设备。 然而,页面上的评论似乎与此相矛盾

我相信使用部分唤醒锁会很快耗尽电池电量。有没有其他方法可以实现我想做的事情,或者有没有人知道解决这个问题的方法

我正在开发一个Android应用程序,目的是在后台监控加速计数据

这不是一个好主意

我在这件事上做了相当多的谷歌搜索。有人说这是一个错误,这是无意的。然而,有人说这是有意的。我还读到,这在2.3.3中是固定的。如果是这样,我将升级我自己的设备。然而,这一页上的评论似乎与此相矛盾

我的猜测是,这取决于设备制造商的行为是什么。此外,正如本期有关该主题的文章所述:

作为补充,它现在的工作方式是你必须获得一个部分尾流锁。 这保证了CPU不会进入睡眠模式,这将保证 传感器继续按预期发送数据。根本问题是,, 基本上,部分尾流锁定不能保证传感器继续工作 跑步

我相信使用部分唤醒锁会很快耗尽电池电量

它使CPU保持通电状态。在正常操作中,CPU是仅次于屏幕的第二大功耗(GPS也可能更多,但通常是断电)

此外,作为:

始终确保禁用不需要的传感器,尤其是在活动暂停时。否则可能会在几个小时内耗尽电池电量

有没有其他方法可以实现我想做的事情,或者有没有人知道解决这个问题的方法


没问题。如果要在屏幕关闭的情况下执行代码,则必须使用部分
唤醒锁定。这与传感器没有什么特别的关系——任何时候想要在屏幕关闭的情况下执行代码,你必须使用部分
唤醒锁

这并不是一个很好的答案,但根据我的经验,部分唤醒锁并不真的那么昂贵——可能是因为屏幕仍然黑暗。然而,根据文档(),维护SensorEventListener有点贪吃(同样的文档说,当屏幕关闭时,您仍然应该获得SensorEvents,所以我认为这确实是一个bug)。