@ohos.WorkSchedulerExtensionAbility (Deferred Task Scheduling Callbacks)
The WorkSchedulerExtensionAbility module provides callbacks for deferred task scheduling. You can override the APIs provided by this module. When a deferred task is triggered, the system calls back the application through the APIs and processes the task logic in the callback.
NOTE
The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
The APIs of this module can be used only in the stage model.
Modules to Import
import WorkSchedulerExtensionAbility from '@ohos.WorkSchedulerExtensionAbility';
Attributes
System capability: SystemCapability.ResourceSchedule.WorkScheduler
Name | Type | Readable | Writable | Description |
---|---|---|---|---|
context10+ | WorkSchedulerExtensionContext | Yes | No | Context of the WorkSchedulerExtension. This context is inherited from ExtensionContext. |
WorkSchedulerExtensionAbility.onWorkStart
onWorkStart(work: workScheduler.WorkInfo): void
Called when the system starts scheduling the deferred task.
System capability: SystemCapability.ResourceSchedule.WorkScheduler
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
work | workScheduler.WorkInfo | Yes | Deferred task that starts. |
Example
import workScheduler from '@ohos.resourceschedule.workScheduler';
export default class MyWorkSchedulerExtensionAbility extends WorkSchedulerExtensionAbility {
onWorkStart(workInfo: workScheduler.WorkInfo) {
console.log('MyWorkSchedulerExtensionAbility onWorkStart' + JSON.stringify(workInfo));
}
}
WorkSchedulerExtensionAbility.onWorkStop
onWorkStop(work: workScheduler.WorkInfo): void
Called when the system stops scheduling the deferred task.
System capability: SystemCapability.ResourceSchedule.WorkScheduler
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
work | workScheduler.WorkInfo | Yes | Deferred task that stops. |
Example
import workScheduler from '@ohos.resourceschedule.workScheduler';
export default class MyWorkSchedulerExtensionAbility extends WorkSchedulerExtensionAbility {
onWorkStop(workInfo: workScheduler.WorkInfo) {
console.log('MyWorkSchedulerExtensionAbility onWorkStop' + JSON.stringify(workInfo));
}
}