我需要JobService每15-20分钟醒来一次
在开始工作时,应用程序JobService可以正常工作,但是经过一两个小时后,它会唤醒。
为什么JobService这样工作?
如何解决?
也许您知道JobService的任何替代方法,它们可以每15到20分钟唤醒一次应用程序
--------------------------initialization-------------------------------------
jobScheduler = getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler
jobInfo = JobInfo.Builder(JOB_ID, ComponentName(this, W2BJobService::class.java))
.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
.setRequiresDeviceIdle(false)
.setRequiresCharging(false)
.setPeriodic(15 * 60 * 1000)
.build()
-----------------------------run---------------------------------------------
jobScheduler?.schedule(jobInfo)
最佳答案
如果操作系统认为有必要保留电池寿命,则作业服务作业将推迟到以后的某个时间点。
作业的执行由操作系统决定,设备在休眠状态(不关闭屏幕使用)的时间间隔内,作业的执行将获得更多的时间。
请参阅打ze文档
https://developer.android.com/training/monitoring-device-state/doze-standby