Loading api/current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6265,6 +6265,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6278,8 +6280,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2 api/system-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6531,6 +6531,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6544,8 +6546,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2 api/test-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6269,6 +6269,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6282,8 +6284,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2 core/java/android/app/job/JobInfo.java +29 −6 Original line number Diff line number Diff line Loading @@ -73,9 +73,32 @@ public class JobInfo implements Parcelable { public static final int BACKOFF_POLICY_EXPONENTIAL = 1; /* Minimum interval for a periodic job, in milliseconds. */ public static final long MIN_PERIOD_MILLIS = 60 * 60 * 1000L; // 60 minutes private static final long MIN_PERIOD_MILLIS = 15 * 60 * 1000L; // 15 minutes /* Minimum flex for a periodic job, in milliseconds. */ public static final long MIN_FLEX_MILLIS = 5 * 60 * 1000L; // 5 minutes private static final long MIN_FLEX_MILLIS = 5 * 60 * 1000L; // 5 minutes /** * Query the minimum interval allowed for periodic scheduled jobs. Attempting * to declare a smaller period that this when scheduling a job will result in a * job that is still periodic, but will run with this effective period. * * @return The minimum available interval for scheduling periodic jobs, in milliseconds. */ public static final long getMinimumPeriod() { return MIN_PERIOD_MILLIS; } /** * Query the minimum flex time allowed for periodic scheduled jobs. Attempting * to declare a shorter flex time than this when scheduling such a job will * result in this amount as the effective flex time for the job. * * @return The minimum available flex time for scheduling periodic jobs, in milliseconds. */ public static final long getMinimumFlex() { return MIN_FLEX_MILLIS; } /** * Default type of backoff. Loading Loading @@ -227,7 +250,7 @@ public class JobInfo implements Parcelable { * job does not recur periodically. */ public long getIntervalMillis() { return intervalMillis >= MIN_PERIOD_MILLIS ? intervalMillis : MIN_PERIOD_MILLIS; return intervalMillis >= getMinimumPeriod() ? intervalMillis : getMinimumPeriod(); } /** Loading @@ -236,7 +259,7 @@ public class JobInfo implements Parcelable { public long getFlexMillis() { long interval = getIntervalMillis(); long percentClamp = 5 * interval / 100; long clampedFlex = Math.max(flexMillis, Math.max(percentClamp, MIN_FLEX_MILLIS)); long clampedFlex = Math.max(flexMillis, Math.max(percentClamp, getMinimumFlex())); return clampedFlex <= interval ? clampedFlex : interval; } Loading Loading @@ -565,9 +588,9 @@ public class JobInfo implements Parcelable { * Specify that this job should recur with the provided interval and flex. The job can * execute at any time in a window of flex length at the end of the period. * @param intervalMillis Millisecond interval for which this job will repeat. A minimum * value of {@link #MIN_PERIOD_MILLIS} is enforced. * value of {@link #getMinimumPeriod()} is enforced. * @param flexMillis Millisecond flex for this job. Flex is clamped to be at least * {@link #MIN_FLEX_MILLIS} or 5 percent of the period, whichever is * {@link #getMinimumFlex()} or 5 percent of the period, whichever is * higher. */ public Builder setPeriodic(long intervalMillis, long flexMillis) { Loading Loading
api/current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6265,6 +6265,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6278,8 +6280,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
api/system-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6531,6 +6531,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6544,8 +6546,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
api/test-current.txt +2 −2 Original line number Diff line number Diff line Loading @@ -6269,6 +6269,8 @@ package android.app.job { method public long getIntervalMillis(); method public long getMaxExecutionDelayMillis(); method public long getMinLatencyMillis(); method public static final long getMinimumFlex(); method public static final long getMinimumPeriod(); method public int getNetworkType(); method public android.content.ComponentName getService(); method public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); Loading @@ -6282,8 +6284,6 @@ package android.app.job { field public static final android.os.Parcelable.Creator<android.app.job.JobInfo> CREATOR; field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L field public static final long MIN_FLEX_MILLIS = 300000L; // 0x493e0L field public static final long MIN_PERIOD_MILLIS = 3600000L; // 0x36ee80L field public static final int NETWORK_TYPE_ANY = 1; // 0x1 field public static final int NETWORK_TYPE_NONE = 0; // 0x0 field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2
core/java/android/app/job/JobInfo.java +29 −6 Original line number Diff line number Diff line Loading @@ -73,9 +73,32 @@ public class JobInfo implements Parcelable { public static final int BACKOFF_POLICY_EXPONENTIAL = 1; /* Minimum interval for a periodic job, in milliseconds. */ public static final long MIN_PERIOD_MILLIS = 60 * 60 * 1000L; // 60 minutes private static final long MIN_PERIOD_MILLIS = 15 * 60 * 1000L; // 15 minutes /* Minimum flex for a periodic job, in milliseconds. */ public static final long MIN_FLEX_MILLIS = 5 * 60 * 1000L; // 5 minutes private static final long MIN_FLEX_MILLIS = 5 * 60 * 1000L; // 5 minutes /** * Query the minimum interval allowed for periodic scheduled jobs. Attempting * to declare a smaller period that this when scheduling a job will result in a * job that is still periodic, but will run with this effective period. * * @return The minimum available interval for scheduling periodic jobs, in milliseconds. */ public static final long getMinimumPeriod() { return MIN_PERIOD_MILLIS; } /** * Query the minimum flex time allowed for periodic scheduled jobs. Attempting * to declare a shorter flex time than this when scheduling such a job will * result in this amount as the effective flex time for the job. * * @return The minimum available flex time for scheduling periodic jobs, in milliseconds. */ public static final long getMinimumFlex() { return MIN_FLEX_MILLIS; } /** * Default type of backoff. Loading Loading @@ -227,7 +250,7 @@ public class JobInfo implements Parcelable { * job does not recur periodically. */ public long getIntervalMillis() { return intervalMillis >= MIN_PERIOD_MILLIS ? intervalMillis : MIN_PERIOD_MILLIS; return intervalMillis >= getMinimumPeriod() ? intervalMillis : getMinimumPeriod(); } /** Loading @@ -236,7 +259,7 @@ public class JobInfo implements Parcelable { public long getFlexMillis() { long interval = getIntervalMillis(); long percentClamp = 5 * interval / 100; long clampedFlex = Math.max(flexMillis, Math.max(percentClamp, MIN_FLEX_MILLIS)); long clampedFlex = Math.max(flexMillis, Math.max(percentClamp, getMinimumFlex())); return clampedFlex <= interval ? clampedFlex : interval; } Loading Loading @@ -565,9 +588,9 @@ public class JobInfo implements Parcelable { * Specify that this job should recur with the provided interval and flex. The job can * execute at any time in a window of flex length at the end of the period. * @param intervalMillis Millisecond interval for which this job will repeat. A minimum * value of {@link #MIN_PERIOD_MILLIS} is enforced. * value of {@link #getMinimumPeriod()} is enforced. * @param flexMillis Millisecond flex for this job. Flex is clamped to be at least * {@link #MIN_FLEX_MILLIS} or 5 percent of the period, whichever is * {@link #getMinimumFlex()} or 5 percent of the period, whichever is * higher. */ public Builder setPeriodic(long intervalMillis, long flexMillis) { Loading