我制作了一个启动服务的应用程序,该应用程序启动了一个计时器,该计时器在一段时间后触发了一个小功能。这在模拟器和Motorola Droid 1上都很好用,但是当手机进入睡眠模式后,在Droid X上却无法使用。我发现,当手机处于睡眠状态时,计时器似乎会暂停。在Droid 1或仿真器上似乎没有执行此操作。我确定该解决方法不太困难,因此我并不想寻求帮助(一次),我只是想做一个解释,以更好地理解这一点。

我的问题是,“睡眠模式”在android系统上到底能做什么?它停止什么,不停止什么,等等。当然,通过睡眠模式,我的意思是当您按下电源按钮并且屏幕变黑时。到底是什么情况?任何见解均表示赞赏。

最佳答案



使用AlarmManager有点棘手。



首先,它将关闭CPU。在此过程中,非必需 radio (WiFi,GPS)也将被关闭。



您唯一可以指望不停止的是GSM或CDMA radio (用于呼入电话,SMS和IP数据包)和AlarmManager



实际上,这本身不是睡眠模式。那就是屏幕关闭。

此后不久,如果没有任何设备使它保持WakeLock的状态,则该设备将进入睡眠模式。但是,不能保证在您按下该按钮并在屏幕关闭后的一毫秒内CPU处于关闭状态。

07-24 09:35