Stay organized with collections
Save and categorize content based on your preferences.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-03-13 UTC.
[null,null,["Last updated 2025-03-13 UTC."],[],[],null,["# android.app.job\n\nAdded in [API level 21](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\nandroid.app.job\n===============\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/android/app/job/package-summary \"View this page in Kotlin\") \\|Java\n\nClasses\n-------\n\n|-----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [JobInfo](/reference/android/app/job/JobInfo) | Container of data passed to the [JobScheduler](/reference/android/app/job/JobScheduler) fully encapsulating the parameters required to schedule work against the calling application. |\n| [JobInfo.Builder](/reference/android/app/job/JobInfo.Builder) | Builder class for constructing [JobInfo](/reference/android/app/job/JobInfo) objects. |\n| [JobInfo.TriggerContentUri](/reference/android/app/job/JobInfo.TriggerContentUri) | Information about a content URI modification that a job would like to trigger on. |\n| [JobParameters](/reference/android/app/job/JobParameters) | Contains the parameters used to configure/identify your job. |\n| [JobScheduler](/reference/android/app/job/JobScheduler) | This is an API for scheduling various types of jobs against the framework that will be executed in your application's own process. |\n| [JobService](/reference/android/app/job/JobService) | Entry point for the callback from the [JobScheduler](/reference/android/app/job/JobScheduler). |\n| [JobServiceEngine](/reference/android/app/job/JobServiceEngine) | Helper for implementing a [Service](/reference/android/app/Service) that interacts with [JobScheduler](/reference/android/app/job/JobScheduler). |\n| [JobWorkItem](/reference/android/app/job/JobWorkItem) | A unit of work that can be enqueued for a job using [JobScheduler.enqueue](/reference/android/app/job/JobScheduler#enqueue(android.app.job.JobInfo,%20android.app.job.JobWorkItem)). |\n| [JobWorkItem.Builder](/reference/android/app/job/JobWorkItem.Builder) | Builder class for constructing [JobWorkItem](/reference/android/app/job/JobWorkItem) objects. |\n| [PendingJobReasonsInfo](/reference/android/app/job/PendingJobReasonsInfo) | A simple wrapper which includes a timestamp (in millis since epoch) and an array of [ERROR(reasons/android.app.job.JobScheduler.PendingJobReason reasons)](/) at that timestamp for why a particular job may be pending. |\n\n-\n\n Classes\n -------\n\n - [JobInfo](/reference/android/app/job/JobInfo)\n - [JobInfo.Builder](/reference/android/app/job/JobInfo.Builder)\n - [JobInfo.TriggerContentUri](/reference/android/app/job/JobInfo.TriggerContentUri)\n - [JobParameters](/reference/android/app/job/JobParameters)\n - [JobScheduler](/reference/android/app/job/JobScheduler)\n - [JobService](/reference/android/app/job/JobService)\n - [JobServiceEngine](/reference/android/app/job/JobServiceEngine)\n - [JobWorkItem](/reference/android/app/job/JobWorkItem)\n - [JobWorkItem.Builder](/reference/android/app/job/JobWorkItem.Builder)\n - [PendingJobReasonsInfo](/reference/android/app/job/PendingJobReasonsInfo)"]]