gpt4 book ai didi

java - 如何使用 JobScheduler 为 Android 定期作业指定初始延迟?

转载 作者:太空宇宙 更新时间:2023-11-03 10:59:23 25 4
gpt4 key购买 nike

我想创建一个具有特定时间和给定周期的运行作业。例如,我想在每个月的第二天安排一个作业,它应该每个月都运行。

查看 JobInfo.Builder documentation我还没有找到设置初始延迟的方法。

关于如何实现这一目标的任何想法?

这是以正确的周期运行但不是我想要的初始延迟的代码:

fun build(application: Application, periodicity: Days, startDay: Days) {
val serviceComponent = ComponentName(application, GenerateDebtJobService::class.java)
val builder = JobInfo.Builder(1, serviceComponent)
.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
.setPeriodic(TimeUnit.DAYS.toMillis(periodicity.days.toLong()))

(application.getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler).schedule(builder.build())

最佳答案

您不能为定期作业应用初始延迟。目前应该可以使用一次性作业作为初始延迟,然后使用周期性间隔安排新的周期性作业。

关于java - 如何使用 JobScheduler 为 Android 定期作业指定初始延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48149705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com