Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 022c4aa9 authored by Christopher Tate's avatar Christopher Tate Committed by android-build-merger
Browse files

Merge "Lower the minimum period for periodic jobs to 15 minutes" into nyc-dev

am: 943c68ae

* commit '943c68ae':
  Lower the minimum period for periodic jobs to 15 minutes
parents 5d542e58 943c68ae
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -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();
@@ -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
+2 −2
Original line number Diff line number Diff line
@@ -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();
@@ -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
+2 −2
Original line number Diff line number Diff line
@@ -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();
@@ -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
+29 −6
Original line number Diff line number Diff line
@@ -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.
@@ -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();
    }

    /**
@@ -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;
    }

@@ -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) {