Known Direct Subclasses
This class is deprecated.
As of November 1, 2020, GCMNetworkManager client libraries are no longer supported. GCMNetworkManager API calls no longer work on devices running Android M and later once your app targets future Android versions ( > Android 10).
Migrate to Jetpack WorkManager for your background scheduling needs.
Public Constructor Summary
Public Method Summary
Optional setter to specify whether this task should be persisted across reboots.
Set the network state your task requires to run.
Set whether your task requires that the device be connected to power in order to execute.
Optional setter to specify whether this task should override any preexisting tasks with the same tag.
Protected Method Summary
Inherited Method Summary
protected Bundle extras
protected String gcmTaskService
protected boolean isPersisted
protected int requiredNetworkState
protected boolean requiresCharging
protected String tag
protected boolean updateCurrent
public Task.Builder ()
public abstract Task build ()
public abstract Task.Builder setExtras (Bundle extras)
Optional setter for specifying any extra parameters necessary for the task.
public abstract Task.Builder setPersisted (boolean isPersisted)
Optional setter to specify whether this task should be persisted across reboots. This defaults to true for periodic tasks and false for one-off tasks. Callers must hold the permission android.Manifest.permission.RECEIVE_BOOT_COMPLETED, otherwise this setting is ignored.
|isPersisted||True if this task should be persisted across device reboots.|
public abstract Task.Builder setRequiredNetwork (int requiredNetworkState)
Set the network state your task requires to run. If the specified network is
unavailable your task will not be executed until it becomes available. The
default for either a periodic or one-off task is
Note that changing this to
means there is no guarantee that data will be available when your task executes. In
addition, the only guarantee for connectivity is at the moment of execution - it is
possible for the device to lose data shortly after your task begins executing.
public abstract Task.Builder setRequiresCharging (boolean requiresCharging)
Set whether your task requires that the device be connected to power in order to execute. Use this to defer nonessential operations whenever possible. Note that if you set this field and the device is not connected to power your task will not run until the device is plugged in. One way to deal with your task not executing until the constraint is met is to schedule another task without the constraints that is subject to some deadline that you can abide. This task would be responsible for executing your fallback logic.
public abstract Task.Builder setService (Class<? extends GcmTaskService> gcmTaskService)
you implement to execute the logic for this task.
|gcmTaskService||Endpoint against which you're scheduling this task.|
public abstract Task.Builder setTag (String tag)
Mandatory setter for specifying the tag identifier for this task. This tag will be
returned at execution time to your endpoint. See
onRunTask(com.google.android.gms.gcm.TaskParams) Maximum tag length is
|tag||String identifier for this task. Consecutive schedule calls for the same tag will update any preexisting task with the same tag.|
public abstract Task.Builder setUpdateCurrent (boolean updateCurrent)
Optional setter to specify whether this task should override any preexisting tasks with the same tag. This defaults to false, which means if a task with the same tag and service is already present then the new task will be dropped instead of replacing the previous task.
|updateCurrent||True to update the current task with the parameters of the new. Default false.|