Android 在短期服务运行时保持设备唤醒的选项

Android 在短期服务运行时保持设备唤醒的选项,android,android-service,android-alarms,android-wake-lock,Android,Android Service,Android Alarms,Android Wake Lock,我正在开发一个应用程序,引导用户完成一个练习计划。它是一种跑步教练,使用音频提示让用户知道在锻炼过程中的不同时间点行走、跑步等 在应用程序运行时,手机很可能会被锁定并放在某人的口袋里,因此我正在研究如何保持声音提示。目前,我正在测试使用本地服务中的处理程序来安排下一个提示。在某些设备上,这比我预期的要好,但在其他设备上,当手机锁定时,服务似乎停止了 我知道我有很多选择——在手机上设置唤醒锁,安排闹钟,(也许?这个不确定),改变服务的优先级,也许更多 那么,人们认为什么是最好的方法呢?请记住,这不

我正在开发一个应用程序,引导用户完成一个练习计划。它是一种跑步教练,使用音频提示让用户知道在锻炼过程中的不同时间点行走、跑步等

在应用程序运行时,手机很可能会被锁定并放在某人的口袋里,因此我正在研究如何保持声音提示。目前,我正在测试使用本地服务中的处理程序来安排下一个提示。在某些设备上,这比我预期的要好,但在其他设备上,当手机锁定时,服务似乎停止了

我知道我有很多选择——在手机上设置唤醒锁,安排闹钟,(也许?这个不确定),改变服务的优先级,也许更多

那么,人们认为什么是最好的方法呢?请记住,这不是一项“正常”的服务——它通常一周运行三次,最多运行半小时,而且它的许多用户在运行时都会播放音乐,因此手机根本不可能睡着。因此,我在想,通常关于电池耗尽唤醒锁的警告在这种情况下可能不太适用


目前,我将API级别8作为我的最低目标。

取决于您需要做多少。如果它只是偶尔在特定的时间间隔播放一些音频,那么你很可能会听到重复的警报。如果你也在做其他事情——通过GPS或其他机制跟踪事情,或任何需要合理CPU的事情——部分唤醒锁可能是最好的选择。

感谢您的回复,Brian。我只是偶尔播放一些音频——可能平均每几分钟播放一次,但间隔不同。在做了更多的研究之后,我当前的处理程序实现与AlarmManager警报的实现相差不远,尽管与在整个运行过程中只打开CPU唤醒锁相比,我需要更加小心(例如,在接收警报时取出唤醒锁,并将其保持打开状态,直到声音播放完毕)。我不确定我能为用户节省多少电池,但我还是试试看,对吧?是的。如果你能帮助,做一个好公民总是更好的。祝你好运