PendingJobReasonsInfo


public final class PendingJobReasonsInfo
extends Object implements Parcelable

java.lang.Object
   ↳ 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.

Summary

Inherited constants

Fields

public static final Creator<PendingJobReasonsInfo> CREATOR

Public constructors

PendingJobReasonsInfo(long timestampMillis, int[] reasons)

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

int[] getPendingJobReasons()

Returns a set of ERROR(reasons/android.app.job.JobScheduler.PendingJobReason reasons) representing why the job may not have executed at the associated timestamp.

long getTimestampMillis()


Value is a non-negative timestamp measured as the number of milliseconds since 1970-01-01T00:00:00Z.

void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

Fields

CREATOR

public static final Creator<PendingJobReasonsInfo> CREATOR

Public constructors

PendingJobReasonsInfo

public PendingJobReasonsInfo (long timestampMillis, 
                int[] reasons)

Parameters
timestampMillis long

reasons int: This value cannot be null. Value is JobScheduler.PENDING_JOB_REASON_UNDEFINED, JobScheduler.PENDING_JOB_REASON_APP, JobScheduler.PENDING_JOB_REASON_APP_STANDBY, JobScheduler.PENDING_JOB_REASON_BACKGROUND_RESTRICTION, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_BATTERY_NOT_LOW, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CHARGING, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CONNECTIVITY, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CONTENT_TRIGGER, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_DEVICE_IDLE, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_MINIMUM_LATENCY, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_PREFETCH, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_STORAGE_NOT_LOW, JobScheduler.PENDING_JOB_REASON_DEVICE_STATE, JobScheduler.PENDING_JOB_REASON_EXECUTING, JobScheduler.PENDING_JOB_REASON_INVALID_JOB_ID, JobScheduler.PENDING_JOB_REASON_JOB_SCHEDULER_OPTIMIZATION, JobScheduler.PENDING_JOB_REASON_QUOTA, JobScheduler.PENDING_JOB_REASON_USER, or JobScheduler.PENDING_JOB_REASON_CONSTRAINT_DEADLINE

Public methods

describeContents

public int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(android.os.Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or CONTENTS_FILE_DESCRIPTOR

getPendingJobReasons

public int[] getPendingJobReasons ()

Returns a set of ERROR(reasons/android.app.job.JobScheduler.PendingJobReason reasons) representing why the job may not have executed at the associated timestamp.

These reasons could either be explicitly set constraints on the job or implicit constraints imposed by the system due to various reasons.

Note: if the only ERROR(/android.app.job.JobScheduler.PendingJobReason) present is ERROR(JobScheduler.PendingJobReason.PENDING_JOB_REASON_UNDEFINED/android.app.job.JobScheduler.PendingJobReason#PENDING_JOB_REASON_UNDEFINED JobScheduler.PendingJobReason.PENDING_JOB_REASON_UNDEFINED), it could mean that the job was ready to be executed at that time.

Returns
int[] This value cannot be null. Value is JobScheduler.PENDING_JOB_REASON_UNDEFINED, JobScheduler.PENDING_JOB_REASON_APP, JobScheduler.PENDING_JOB_REASON_APP_STANDBY, JobScheduler.PENDING_JOB_REASON_BACKGROUND_RESTRICTION, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_BATTERY_NOT_LOW, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CHARGING, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CONNECTIVITY, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_CONTENT_TRIGGER, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_DEVICE_IDLE, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_MINIMUM_LATENCY, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_PREFETCH, JobScheduler.PENDING_JOB_REASON_CONSTRAINT_STORAGE_NOT_LOW, JobScheduler.PENDING_JOB_REASON_DEVICE_STATE, JobScheduler.PENDING_JOB_REASON_EXECUTING, JobScheduler.PENDING_JOB_REASON_INVALID_JOB_ID, JobScheduler.PENDING_JOB_REASON_JOB_SCHEDULER_OPTIMIZATION, JobScheduler.PENDING_JOB_REASON_QUOTA, JobScheduler.PENDING_JOB_REASON_USER, or JobScheduler.PENDING_JOB_REASON_CONSTRAINT_DEADLINE

getTimestampMillis

public long getTimestampMillis ()


Value is a non-negative timestamp measured as the number of milliseconds since 1970-01-01T00:00:00Z.

Returns
long the time (in millis since epoch) associated with the set of pending job reasons. Value is a non-negative timestamp measured as the number of milliseconds since 1970-01-01T00:00:00Z.

writeToParcel

public void writeToParcel (Parcel dest, 
                int flags)

Flatten this object in to a Parcel.

Parameters
dest Parcel: This value cannot be null.

flags int: Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES