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

Commit 5ef82893 authored by mxyyiyi's avatar mxyyiyi
Browse files

Reset the delay time to refresh the periodic job.

Bug: 315225261
Test: manual
Change-Id: I5a42a9d2ac11ff5f036eaa85e37682438fceeac2
parent 882058de
Loading
Loading
Loading
Loading
+2 −15
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ import android.util.Log;
import com.android.settings.core.instrumentation.ElapsedTimeUtils;
import com.android.settings.fuelgauge.BatteryUsageHistoricalLogEntry.Action;
import com.android.settings.fuelgauge.batteryusage.bugreport.BatteryUsageLogUtils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.fuelgauge.BatteryUtils;

import java.time.Duration;
@@ -34,9 +33,7 @@ import java.time.Duration;
/** Receives broadcasts to start or stop the periodic fetching job. */
public final class BootBroadcastReceiver extends BroadcastReceiver {
    private static final String TAG = "BootBroadcastReceiver";
    private static final long RESCHEDULE_FOR_BOOT_ACTION_WITH_DELAY =
            Duration.ofMinutes(40).toMillis();
    private static final long RESCHEDULE_FOR_BOOT_ACTION_WITHOUT_DELAY =
    private static final long RESCHEDULE_FOR_BOOT_ACTION_DELAY_MILLIS =
            Duration.ofSeconds(6).toMillis();

    private final Handler mHandler = new Handler(Looper.getMainLooper());
@@ -81,7 +78,7 @@ public final class BootBroadcastReceiver extends BroadcastReceiver {
        if (Intent.ACTION_BOOT_COMPLETED.equals(action)) {
            final Intent recheckIntent = new Intent(ACTION_PERIODIC_JOB_RECHECK);
            recheckIntent.setClass(context, BootBroadcastReceiver.class);
            final long delayedTime = getRescheduleTimeForBootAction(context);
            final long delayedTime = RESCHEDULE_FOR_BOOT_ACTION_DELAY_MILLIS;
            mHandler.postDelayed(() -> context.sendBroadcast(recheckIntent), delayedTime);

            // Refreshes the usage source from UsageStatsManager when booting.
@@ -93,16 +90,6 @@ public final class BootBroadcastReceiver extends BroadcastReceiver {
        }
    }

    private long getRescheduleTimeForBootAction(Context context) {
        final boolean delayHourlyJobWhenBooting =
                FeatureFactory.getFeatureFactory()
                        .getPowerUsageFeatureProvider()
                        .delayHourlyJobWhenBooting();
        return delayHourlyJobWhenBooting
                ? RESCHEDULE_FOR_BOOT_ACTION_WITH_DELAY
                : RESCHEDULE_FOR_BOOT_ACTION_WITHOUT_DELAY;
    }

    private static void refreshJobs(Context context) {
        PeriodicJobManager.getInstance(context).refreshJob(/* fromBoot= */ true);
    }