我有一个需要向服务器发送周期性心跳的应用程序,但是当手机进入待机模式时,后台心跳线程就会死亡。无论如何,是否可以将手机从待机状态唤醒,发送心跳,然后以编程方式返回 sleep 状态?如果可能,我想避免使用 PARTIAL_WAKE_LOCK。

谢谢

最佳答案



AlarmManager_WAKEUP 风格的警报一起使用。这里是 a sample project 说明了它的用法(以及你想要的 WakefulIntentService,以确保设备在你的网络 I/O 期间不会重新进入休眠状态)。



您不能在没有 WakeLock 的情况下进行网络 I/O,因为设备会在 I/O 期间重新进入休眠状态。使用 AlarmManager ,您可以安排在实际心跳工作期间仅保留 WakeLock,而不是 100% 的时间。

关于Android - 定期从待机模式唤醒?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3579027/

10-12 04:48