我想创建一个警报,它将从服务器流式传输音频文件。所以基本上我想准确地在特定时间开始前台服务或活动。我应该使用jobscheduler还是alarmmanager?我已经读过,求职者无法在特定时间准确地开始工作。奥利奥的背景限制是否会阻止警报管理员在打盹模式下开火。我应该使用jobscheduler在特定时间之前启动前台服务(因此它不必准确),然后从前台服务启动警报。
答案 0 :(得分:0)
您需要将AlarmManager
与setExactAndAllowWhileIdle
,setAlarmClock()
或setAndAllowWhileIdle()
方法一起使用。
基于文档
- 标准AlarmManager警报(包括setExact()和setWindow())被推迟到下一个维护窗口。
- 如果您需要设置在Doze中触发的警报,请使用setAndAllowWhileIdle()或setExactAndAllowWhileIdle()。
- 使用setAlarmClock()设置的警报继续正常启动 - 系统在警报触发前不久退出Doze。