1

JobDispacther在晚上(凌晨 1 点左右)使用 a 从我的服务器获取数据。我在 Jellybean 上进行了测试,但是当我在Nougat 7.1.2(API 25)上进行测试时,应用程序关闭时它不起作用。我将此代码用于测试目的

class AutoFetch(context: Context){

    fun scheduleToFetchAtNight() {
      val job = jobDispatcher.newJobBuilder()
            .setLifetime(Lifetime.FOREVER)
            .setService(AutoFetchService::class.java)
            .setTag("fetchAtNight")
            .setRecurring(false)
            .setReplaceCurrent(true)
            .setTrigger(Trigger.executionWindow(60, 60))
            .setConstraints(Constraint.ON_ANY_NETWORK).build()
      val result = jobDispatcher.schedule(job)  
    }
}  

自动获取服务

class AutoFetchService : JobService() {

    override fun onStartJob(job: JobParameters): Boolean {

        toast("Job Started")
        AutoFetch(this).scheduleToFetchAtNight()//Reschedule

        dataManager.fetchData{
            //on Fetched 
            jobFinished(job, false)
        }
    return true
    }
    override fun onStopJob(job: JobParameters): Boolean = true
}  

我也在那个网站上发布了问题,但仍然没有得到任何回应,请帮助

4

0 回答 0