| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java
|
| index 438ff55ea4e98e400a2742eb770958c2c9b92895..c4d6fbf3be9c3728a52a5635a1639aa964810dc1 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java
|
| @@ -7,7 +7,6 @@ package org.chromium.chrome.browser.ntp.snippets;
|
| import android.content.Context;
|
|
|
| import com.google.android.gms.gcm.GcmNetworkManager;
|
| -import com.google.android.gms.gcm.OneoffTask;
|
| import com.google.android.gms.gcm.PeriodicTask;
|
| import com.google.android.gms.gcm.Task;
|
|
|
| @@ -19,8 +18,6 @@ import org.chromium.chrome.browser.ChromeBackgroundService;
|
| import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
|
| import org.chromium.chrome.browser.externalauth.UserRecoverableErrorHandler;
|
|
|
| -import java.util.Date;
|
| -
|
| /**
|
| * The {@link SnippetsLauncher} singleton is created and owned by the C++ browser.
|
| *
|
| @@ -35,9 +32,8 @@ public class SnippetsLauncher {
|
| // TODO(treib): Remove this after M55.
|
| private static final String OBSOLETE_TASK_TAG_WIFI_CHARGING = "FetchSnippetsWifiCharging";
|
|
|
| - // Task tag for re-scheduling the snippet fetching. This is used to support different fetching
|
| - // intervals during different times of day.
|
| - public static final String TASK_TAG_RESCHEDULE = "RescheduleSnippets";
|
| + // TODO(treib): Remove this after M55.
|
| + private static final String OBSOLETE_TASK_TAG_RESCHEDULE = "RescheduleSnippets";
|
|
|
| // The instance of SnippetsLauncher currently owned by a C++ SnippetsLauncherAndroid, if any.
|
| // If it is non-null then the browser is running.
|
| @@ -100,46 +96,27 @@ public class SnippetsLauncher {
|
| }
|
|
|
| private static PeriodicTask buildFetchTask(
|
| - String tag, long periodSeconds, int requiredNetwork, boolean requiresCharging) {
|
| + String tag, long periodSeconds, int requiredNetwork) {
|
| return new PeriodicTask.Builder()
|
| .setService(ChromeBackgroundService.class)
|
| .setTag(tag)
|
| .setPeriod(periodSeconds)
|
| .setRequiredNetwork(requiredNetwork)
|
| - .setRequiresCharging(requiresCharging)
|
| - .setPersisted(true)
|
| - .setUpdateCurrent(true)
|
| - .build();
|
| - }
|
| -
|
| - private static OneoffTask buildRescheduleTask(Date date) {
|
| - Date now = new Date();
|
| - // Convert from milliseconds to seconds, rounding up.
|
| - long delaySeconds = (date.getTime() - now.getTime() + 999) / 1000;
|
| - final long intervalSeconds = 15 * 60;
|
| - return new OneoffTask.Builder()
|
| - .setService(ChromeBackgroundService.class)
|
| - .setTag(TASK_TAG_RESCHEDULE)
|
| - .setExecutionWindow(delaySeconds, delaySeconds + intervalSeconds)
|
| - .setRequiredNetwork(Task.NETWORK_STATE_ANY)
|
| - .setRequiresCharging(false)
|
| .setPersisted(true)
|
| .setUpdateCurrent(true)
|
| .build();
|
| }
|
|
|
| - private void scheduleOrCancelFetchTask(
|
| - String taskTag, long period, int requiredNetwork, boolean requiresCharging) {
|
| + private void scheduleOrCancelFetchTask(String taskTag, long period, int requiredNetwork) {
|
| if (period > 0) {
|
| - mScheduler.schedule(buildFetchTask(taskTag, period, requiredNetwork, requiresCharging));
|
| + mScheduler.schedule(buildFetchTask(taskTag, period, requiredNetwork));
|
| } else {
|
| mScheduler.cancelTask(taskTag, ChromeBackgroundService.class);
|
| }
|
| }
|
|
|
| @CalledByNative
|
| - private boolean schedule(
|
| - long periodWifiSeconds, long periodFallbackSeconds, long rescheduleTime) {
|
| + private boolean schedule(long periodWifiSeconds, long periodFallbackSeconds) {
|
| if (!mGCMEnabled) return false;
|
| Log.d(TAG, "Scheduling: " + periodWifiSeconds + " " + periodFallbackSeconds);
|
| // Google Play Services may not be up to date, if the application was not installed through
|
| @@ -147,14 +124,10 @@ public class SnippetsLauncher {
|
| try {
|
| mScheduler.cancelTask(OBSOLETE_TASK_TAG_WIFI_CHARGING, ChromeBackgroundService.class);
|
| scheduleOrCancelFetchTask(
|
| - TASK_TAG_WIFI, periodWifiSeconds, Task.NETWORK_STATE_UNMETERED, false);
|
| + TASK_TAG_WIFI, periodWifiSeconds, Task.NETWORK_STATE_UNMETERED);
|
| scheduleOrCancelFetchTask(
|
| - TASK_TAG_FALLBACK, periodFallbackSeconds, Task.NETWORK_STATE_CONNECTED, false);
|
| - if (rescheduleTime > 0) {
|
| - mScheduler.schedule(buildRescheduleTask(new Date(rescheduleTime)));
|
| - } else {
|
| - mScheduler.cancelTask(TASK_TAG_RESCHEDULE, ChromeBackgroundService.class);
|
| - }
|
| + TASK_TAG_FALLBACK, periodFallbackSeconds, Task.NETWORK_STATE_CONNECTED);
|
| + mScheduler.cancelTask(OBSOLETE_TASK_TAG_RESCHEDULE, ChromeBackgroundService.class);
|
| } catch (IllegalArgumentException e) {
|
| // Disable GCM for the remainder of this session.
|
| mGCMEnabled = false;
|
| @@ -168,7 +141,7 @@ public class SnippetsLauncher {
|
| private boolean unschedule() {
|
| if (!mGCMEnabled) return false;
|
| Log.i(TAG, "Unscheduling");
|
| - return schedule(0, 0, 0);
|
| + return schedule(0, 0);
|
| }
|
| }
|
|
|
|
|