From: thermatk Date: Fri, 22 Jun 2018 17:11:38 +0200 Subject: kill GCM --- build/secondary/third_party/android_tools/BUILD.gn | 2 - .../third_party/android_tools/support/BUILD.gn | 5 -- chrome/android/BUILD.gn | 1 - chrome/android/java/AndroidManifest.xml | 62 ---------------------- .../chrome/browser/BackgroundSyncLauncher.java | 16 +++--- .../invalidation/InvalidationController.java | 13 +---- .../browser/ntp/snippets/SnippetsLauncher.java | 44 --------------- .../browser/services/gcm/GCMBackgroundTask.java | 2 - .../gcm/InvalidationGcmUpstreamSender.java | 3 +- chrome/android/java_sources.gni | 2 - components/background_task_scheduler/BUILD.gn | 1 - .../BackgroundTaskSchedulerGcmNetworkManager.java | 30 ++++------- components/gcm_driver/android/BUILD.gn | 1 - components/gcm_driver/instance_id/android/BUILD.gn | 1 - .../gcm_driver/instance_id/InstanceIDBridge.java | 29 +++------- components/sync/android/BUILD.gn | 1 - third_party/cacheinvalidation/BUILD.gn | 6 --- .../client/contrib/MultiplexingGcmListener.java | 49 ++--------------- .../android2/channel/AndroidNetworkChannel.java | 18 +++---- 19 files changed, 36 insertions(+), 250 deletions(-) diff --git a/build/secondary/third_party/android_tools/BUILD.gn b/build/secondary/third_party/android_tools/BUILD.gn --- a/build/secondary/third_party/android_tools/BUILD.gn +++ b/build/secondary/third_party/android_tools/BUILD.gn @@ -64,8 +64,6 @@ if (enable_java_templates) { support_lib_alias("android_support_chromium_java") { testonly = true } - support_lib_alias("android_gcm_java") { - } support_lib_alias("emma_device_java") { } prebuilt_wrapper("android_arch_lifecycle_common_java") { diff --git a/build/secondary/third_party/android_tools/support/BUILD.gn b/build/secondary/third_party/android_tools/support/BUILD.gn --- a/build/secondary/third_party/android_tools/support/BUILD.gn +++ b/build/secondary/third_party/android_tools/support/BUILD.gn @@ -21,11 +21,6 @@ android_library("android_support_chromium_java") { visibility += [ "//third_party/android_tools:*" ] } -android_java_prebuilt("android_gcm_java") { - jar_path = "//third_party/android_tools/sdk/extras/google/gcm/gcm-client/dist/gcm.jar" - visibility += [ "//third_party/android_tools:*" ] -} - android_java_prebuilt("emma_device_java") { jar_path = "//third_party/android_tools/sdk/tools/lib/emma_device.jar" include_java_resources = true diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn @@ -269,7 +269,6 @@ android_library("chrome_java") { "//third_party/android_swipe_refresh:android_swipe_refresh_java", "//third_party/android_tools:android_arch_lifecycle_common_java", "//third_party/android_tools:android_arch_lifecycle_runtime_java", - "//third_party/android_tools:android_gcm_java", "//third_party/android_tools:android_support_annotations_java", "//third_party/android_tools:android_support_compat_java", "//third_party/android_tools:android_support_design_java", diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml @@ -77,22 +77,17 @@ by a child template that "extends" this file. - - - - @@ -919,43 +914,6 @@ by a child template that "extends" this file. android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" android:hardwareAccelerated="false" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -967,8 +925,6 @@ by a child template that "extends" this file. - - - - - - - - - - - - - - - diff --git a/chrome/android/java/src/org/chromium/chrome/browser/BackgroundSyncLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/BackgroundSyncLauncher.java --- a/chrome/android/java/src/org/chromium/chrome/browser/BackgroundSyncLauncher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/BackgroundSyncLauncher.java @@ -8,10 +8,6 @@ import android.content.Context; import android.content.SharedPreferences; import android.os.StrictMode; -import com.google.android.gms.gcm.GcmNetworkManager; -import com.google.android.gms.gcm.OneoffTask; -import com.google.android.gms.gcm.Task; - import org.chromium.base.AsyncTask; import org.chromium.base.ContextUtils; import org.chromium.base.Log; @@ -37,8 +33,6 @@ public class BackgroundSyncLauncher { // BackgroundSyncLauncherAndroid, if any. If it is non-null then the browser is running. private static BackgroundSyncLauncher sInstance; - private GcmNetworkManager mScheduler; - /** * Disables the automatic use of the GCMNetworkManager. When disabled, the methods which * interact with GCM can still be used, but will not be called automatically on creation, or by @@ -123,6 +117,7 @@ public class BackgroundSyncLauncher { @VisibleForTesting @CalledByNative protected void launchBrowserIfStopped(final boolean shouldLaunch, final long minDelayMs) { + /* mLaunchBrowserIfStoppedTask = new AsyncTask() { @Override protected Void doInBackground(Void... params) { @@ -147,6 +142,7 @@ public class BackgroundSyncLauncher { } } }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + */ } /** @@ -158,7 +154,6 @@ public class BackgroundSyncLauncher { } protected BackgroundSyncLauncher() { - mScheduler = GcmNetworkManager.getInstance(ContextUtils.getApplicationContext()); launchBrowserIfStopped(false, 0); } @@ -186,7 +181,7 @@ public class BackgroundSyncLauncher { } return !sGCMEnabled; } - + /* private static boolean scheduleLaunchTask(GcmNetworkManager scheduler, long minDelayMs) { // Google Play Services may not be up to date, if the application was not installed through // the Play Store. In this case, scheduling the task will fail silently. @@ -229,7 +224,7 @@ public class BackgroundSyncLauncher { } return true; } - + */ /** * Reschedule any required background sync tasks, if they have been removed due to an * application upgrade. @@ -239,6 +234,7 @@ public class BackgroundSyncLauncher { * This method is static so that it can be run without actually instantiating a * BackgroundSyncLauncher. */ + /* protected static void rescheduleTasksOnUpgrade(final Context context) { final GcmNetworkManager scheduler = GcmNetworkManager.getInstance(context); BackgroundSyncLauncher.ShouldLaunchCallback callback = shouldLaunch -> { @@ -252,7 +248,7 @@ public class BackgroundSyncLauncher { }; BackgroundSyncLauncher.shouldLaunchBrowserIfStopped(callback); } - + */ @VisibleForTesting static void setGCMEnabled(boolean enabled) { sGCMEnabled = enabled; diff --git a/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java b/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java --- a/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java @@ -11,8 +11,6 @@ import android.os.Build; import android.os.Handler; import android.os.SystemClock; -import com.google.ipc.invalidation.ticl.android2.channel.AndroidGcmController; - import org.chromium.base.ApplicationState; import org.chromium.base.ApplicationStatus; import org.chromium.base.AsyncTask; @@ -200,16 +198,7 @@ public class InvalidationController implements ApplicationStatus.ApplicationStat * Registers for Google Cloud Messaging (GCM) for Invalidations. */ private void ensureGcmIsInitialized() { - if (mGcmInitialized) return; - mGcmInitialized = true; - new AsyncTask() { - @Override - protected Void doInBackground(Void... arg0) { - boolean useGcmUpstream = true; - AndroidGcmController.get(mContext).initializeGcm(useGcmUpstream); - return null; - } - }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + mGcmInitialized = false; } @VisibleForTesting 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 --- 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,15 +7,10 @@ package org.chromium.chrome.browser.ntp.snippets; import android.content.Context; import android.net.ConnectivityManager; -import com.google.android.gms.gcm.GcmNetworkManager; -import com.google.android.gms.gcm.PeriodicTask; -import com.google.android.gms.gcm.Task; - import org.chromium.base.ContextUtils; import org.chromium.base.Log; import org.chromium.base.VisibleForTesting; import org.chromium.base.annotations.CalledByNative; -import org.chromium.chrome.browser.ChromeBackgroundService; import org.chromium.chrome.browser.externalauth.ExternalAuthUtils; /** @@ -40,8 +35,6 @@ public class SnippetsLauncher { // If it is non-null then the browser is running. private static SnippetsLauncher sInstance; - private GcmNetworkManager mScheduler; - private boolean mGCMEnabled = true; /** @@ -78,7 +71,6 @@ public class SnippetsLauncher { protected SnippetsLauncher() { checkGCM(); - mScheduler = GcmNetworkManager.getInstance(ContextUtils.getApplicationContext()); } private void checkGCM() { @@ -89,32 +81,7 @@ public class SnippetsLauncher { } } - private static PeriodicTask buildFetchTask( - String tag, long periodSeconds, int requiredNetwork) { - // Add a bit of "flex" around the target period. This achieves the following: - // - It makes sure the task doesn't run (significantly) before its initial period has - // elapsed. In practice, the scheduler seems to behave like that anyway, but it doesn't - // guarantee that, so we shouldn't rely on it. - // - It gives the scheduler a bit of room to optimize for battery life. - long effectivePeriodSeconds = (long) (periodSeconds * (1.0 + FLEX_FACTOR)); - long flexSeconds = (long) (periodSeconds * (2.0 * FLEX_FACTOR)); - return new PeriodicTask.Builder() - .setService(ChromeBackgroundService.class) - .setTag(tag) - .setPeriod(effectivePeriodSeconds) - .setFlex(flexSeconds) - .setRequiredNetwork(requiredNetwork) - .setPersisted(true) - .setUpdateCurrent(true) - .build(); - } - private void scheduleOrCancelFetchTask(String taskTag, long period, int requiredNetwork) { - if (period > 0) { - mScheduler.schedule(buildFetchTask(taskTag, period, requiredNetwork)); - } else { - mScheduler.cancelTask(taskTag, ChromeBackgroundService.class); - } } @CalledByNative @@ -127,23 +94,12 @@ public class SnippetsLauncher { .edit() .putBoolean(PREF_IS_SCHEDULED, isScheduled) .apply(); - - // Google Play Services may not be up to date, if the application was not installed through - // the Play Store. In this case, scheduling the task will fail silently. - try { - scheduleOrCancelFetchTask( - TASK_TAG_WIFI, periodWifiSeconds, Task.NETWORK_STATE_UNMETERED); - scheduleOrCancelFetchTask( - TASK_TAG_FALLBACK, periodFallbackSeconds, Task.NETWORK_STATE_CONNECTED); - } catch (IllegalArgumentException e) { // Disable GCM for the remainder of this session. mGCMEnabled = false; ContextUtils.getAppSharedPreferences().edit().remove(PREF_IS_SCHEDULED).apply(); // Return false so that the failure will be logged. return false; - } - return true; } @CalledByNative diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java --- a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java @@ -39,8 +39,6 @@ public class GCMBackgroundTask implements BackgroundTask { Log.e(TAG, "The received bundle containing message data could not be validated."); return false; } - - ChromeGcmListenerService.dispatchMessageToDriver(context, new GCMMessage(extras)); return false; } diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java --- a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java @@ -12,7 +12,6 @@ import android.os.Parcel; import android.support.annotation.MainThread; import android.util.Log; -import com.google.android.gms.gcm.GoogleCloudMessaging; import com.google.ipc.invalidation.ticl.android2.channel.GcmUpstreamSenderService; import org.chromium.base.AsyncTask; @@ -95,6 +94,7 @@ public class InvalidationGcmUpstreamSender extends GcmUpstreamSenderService { * This function runs on a thread from the AsyncTask.THREAD_POOL_EXECUTOR. */ private void sendUpstreamMessage(String to, Bundle data, String token, Context context) { + /* // Add the OAuth2 token to the bundle. The token should have the prefix Bearer added to it. data.putString("Authorization", "Bearer " + token); if (!isMessageWithinLimit(data)) { @@ -109,6 +109,7 @@ public class InvalidationGcmUpstreamSender extends GcmUpstreamSenderService { Log.w(TAG, "Send message failed"); GcmUma.recordGcmUpstreamHistogram(context, GcmUma.UMA_UPSTREAM_SEND_FAILED); } + */ } private boolean isMessageWithinLimit(Bundle data) { diff --git a/chrome/android/java_sources.gni b/chrome/android/java_sources.gni --- a/chrome/android/java_sources.gni +++ b/chrome/android/java_sources.gni @@ -27,7 +27,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/ChromeActivity.java", "java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java", "java/src/org/chromium/chrome/browser/ChromeApplication.java", - "java/src/org/chromium/chrome/browser/ChromeBackgroundService.java", "java/src/org/chromium/chrome/browser/ChromeBackupAgent.java", "java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java", "java/src/org/chromium/chrome/browser/ChromeFeatureList.java", @@ -1217,7 +1216,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/services/AndroidEduAndChildAccountHelper.java", "java/src/org/chromium/chrome/browser/services/AndroidEduOwnerCheckCallback.java", "java/src/org/chromium/chrome/browser/services/GoogleServicesManager.java", - "java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java", "java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java", "java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java", "java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java", diff --git a/components/background_task_scheduler/BUILD.gn b/components/background_task_scheduler/BUILD.gn --- a/components/background_task_scheduler/BUILD.gn +++ b/components/background_task_scheduler/BUILD.gn @@ -23,7 +23,6 @@ if (is_android) { android_library("background_task_scheduler_java") { java_files = [ "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTask.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java", "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskJobService.java", "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskReflection.java", "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskScheduler.java", diff --git a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java --- a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java +++ b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java @@ -8,14 +8,6 @@ import android.content.Context; import android.os.Bundle; import android.support.annotation.NonNull; -import com.google.android.gms.common.ConnectionResult; -import com.google.android.gms.common.GoogleApiAvailability; -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; -import com.google.android.gms.gcm.TaskParams; - import org.chromium.base.Log; import org.chromium.base.ThreadUtils; import org.chromium.base.VisibleForTesting; @@ -33,7 +25,7 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule static final String BACKGROUND_TASK_CLASS_KEY = "_background_task_class"; @VisibleForTesting static final String BACKGROUND_TASK_EXTRAS_KEY = "_background_task_extras"; - + /* static BackgroundTask getBackgroundTaskFromTaskParams(@NonNull TaskParams taskParams) { String backgroundTaskClassName = getBackgroundTaskClassFromTaskParams(taskParams); return BackgroundTaskReflection.getBackgroundTaskFromClassName(backgroundTaskClassName); @@ -44,7 +36,7 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule if (extras == null) return null; return extras.getString(BACKGROUND_TASK_CLASS_KEY); } - + */ /** * Retrieves the {@link TaskParameters} from the {@link TaskParams}, which are passed as * one of the keys. Only values valid for {@link android.os.BaseBundle} are supported, and other @@ -53,6 +45,8 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule * @param taskParams the {@link TaskParams} to extract the {@link TaskParameters} from. * @return the {@link TaskParameters} for the current job. */ + + /* static TaskParameters getTaskParametersFromTaskParams(@NonNull TaskParams taskParams) { int taskId; try { @@ -132,6 +126,7 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule return Task.NETWORK_STATE_ANY; } + */ @Override public boolean schedule(Context context, @NonNull TaskInfo taskInfo) { ThreadUtils.assertOnUiThread(); @@ -142,6 +137,7 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule + " has no parameterless public constructor."); return false; } + /* GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); if (gcmNetworkManager == null) { @@ -158,14 +154,15 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule "GcmNetworkManager failed to schedule task, gcm message: " + gcmErrorMessage); return false; } - - return true; + */ + return false; } @Override public void cancel(Context context, int taskId) { ThreadUtils.assertOnUiThread(); + /* GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); if (gcmNetworkManager == null) { Log.e(TAG, "GcmNetworkManager is not available."); @@ -178,14 +175,7 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule } catch (IllegalArgumentException e) { Log.e(TAG, "GcmNetworkManager failed to cancel task."); } - } - - private GcmNetworkManager getGcmNetworkManager(Context context) { - if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(context) - == ConnectionResult.SUCCESS) { - return GcmNetworkManager.getInstance(context); - } - return null; + */ } private static String taskIdToTaskTag(int taskId) { diff --git a/components/gcm_driver/android/BUILD.gn b/components/gcm_driver/android/BUILD.gn --- a/components/gcm_driver/android/BUILD.gn +++ b/components/gcm_driver/android/BUILD.gn @@ -15,7 +15,6 @@ android_library("gcm_driver_java") { deps = [ "//base:base_java", "//content/public/android:content_java", - "//third_party/android_tools:android_gcm_java", "//third_party/jsr-305:jsr_305_javalib", ] diff --git a/components/gcm_driver/instance_id/android/BUILD.gn b/components/gcm_driver/instance_id/android/BUILD.gn --- a/components/gcm_driver/instance_id/android/BUILD.gn +++ b/components/gcm_driver/instance_id/android/BUILD.gn @@ -26,7 +26,6 @@ android_library("instance_id_driver_java") { java_files = [ "java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java", - "java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java", ] } diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java --- a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java +++ b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java @@ -25,7 +25,6 @@ public class InstanceIDBridge { * Underlying InstanceIDWithSubtype. May be shared by multiple InstanceIDBridges. Must be * initialized on a background thread. */ - private InstanceIDWithSubtype mInstanceID; private static boolean sBlockOnAsyncTasksForTesting; @@ -70,7 +69,7 @@ public class InstanceIDBridge { new BridgeAsyncTask() { @Override protected String doBackgroundWork() { - return mInstanceID.getId(); + return ""; } @Override protected void sendResultToNative(String id) { @@ -85,7 +84,7 @@ public class InstanceIDBridge { new BridgeAsyncTask() { @Override protected Long doBackgroundWork() { - return mInstanceID.getCreationTime(); + return 0L; } @Override protected void sendResultToNative(Long creationTime) { @@ -106,11 +105,7 @@ public class InstanceIDBridge { new BridgeAsyncTask() { @Override protected String doBackgroundWork() { - try { - return mInstanceID.getToken(authorizedEntity, scope, extras); - } catch (IOException ex) { - return ""; - } + return ""; } @Override protected void sendResultToNative(String token) { @@ -126,12 +121,7 @@ public class InstanceIDBridge { new BridgeAsyncTask() { @Override protected Boolean doBackgroundWork() { - try { - mInstanceID.deleteToken(authorizedEntity, scope); - return true; - } catch (IOException ex) { - return false; - } + return true; } @Override protected void sendResultToNative(Boolean success) { @@ -146,12 +136,7 @@ public class InstanceIDBridge { new BridgeAsyncTask() { @Override protected Boolean doBackgroundWork() { - try { - mInstanceID.deleteInstanceID(); - return true; - } catch (IOException ex) { - return false; - } + return true; } @Override protected void sendResultToNative(Boolean success) { @@ -190,11 +175,11 @@ public class InstanceIDBridge { @Override @SuppressWarnings("NoSynchronizedThisCheck") // Only used/accessible by native. protected Result doInBackground(Void... params) { - synchronized (InstanceIDBridge.this) { +/* synchronized (InstanceIDBridge.this) { if (mInstanceID == null) { mInstanceID = InstanceIDWithSubtype.getInstance(mSubtype); } - } + }*/ return doBackgroundWork(); } @Override diff --git a/components/sync/android/BUILD.gn b/components/sync/android/BUILD.gn --- a/components/sync/android/BUILD.gn +++ b/components/sync/android/BUILD.gn @@ -10,7 +10,6 @@ android_library("sync_java") { "//base:base_java", "//components/signin/core/browser/android:java", "//net/android:net_java", - "//third_party/android_tools:android_gcm_java", "//third_party/android_tools:android_support_annotations_java", "//third_party/cacheinvalidation:cacheinvalidation_javalib", "//third_party/cacheinvalidation:cacheinvalidation_proto_java", diff --git a/third_party/cacheinvalidation/BUILD.gn b/third_party/cacheinvalidation/BUILD.gn --- a/third_party/cacheinvalidation/BUILD.gn +++ b/third_party/cacheinvalidation/BUILD.gn @@ -141,7 +141,6 @@ if (is_android) { "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", "//third_party/android_protobuf:protobuf_nano_javalib", - "//third_party/android_tools:android_gcm_java", ] java_files = [ @@ -207,13 +206,8 @@ if (is_android) { "src/java/com/google/ipc/invalidation/ticl/android2/WakeLockManager.java", "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidChannelConstants.java", "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidChannelPreferences.java", - "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java", - "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java", - "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java", - "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java", "src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java", "src/java/com/google/ipc/invalidation/ticl/android2/channel/CommonUtils.java", - "src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java", "src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmUpstreamSenderService.java", "src/java/com/google/ipc/invalidation/ticl/proto/AndroidChannel.java", "src/java/com/google/ipc/invalidation/ticl/proto/AndroidListenerProtocol.java", diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java --- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java +++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java @@ -16,9 +16,6 @@ package com.google.ipc.invalidation.external.client.contrib; -import com.google.android.gcm.GCMBaseIntentService; -import com.google.android.gcm.GCMBroadcastReceiver; -import com.google.android.gcm.GCMRegistrar; import com.google.ipc.invalidation.external.client.SystemResources.Logger; import com.google.ipc.invalidation.external.client.android.service.AndroidLogger; import com.google.ipc.invalidation.ticl.android2.WakeLockManager; @@ -69,7 +66,7 @@ import android.content.pm.ServiceInfo; * there is nothing to do except log an error (which this class does). * */ -public class MultiplexingGcmListener extends GCMBaseIntentService { +public class MultiplexingGcmListener { /* This class is public so that it can be instantiated by the Android runtime. */ /** Constants used in broadcast Intents. */ @@ -106,18 +103,6 @@ public class MultiplexingGcmListener extends GCMBaseIntentService { } /** - * {@link GCMBroadcastReceiver} that forwards GCM intents to the {@code MultiplexingGcmListener} - * class. - */ - public static class GCMReceiver extends GCMBroadcastReceiver { - /* This class is public so that it can be instantiated by the Android runtime. */ - @Override - protected String getGCMIntentServiceClassName(Context context) { - return MultiplexingGcmListener.class.getName(); - } - } - - /** * Convenience base class for client implementations. It provides base classes for a broadcast * receiver and an intent service that work together to handle events from the * {@code MultiplexingGcmListener} while holding a wake lock. @@ -261,7 +246,7 @@ public class MultiplexingGcmListener extends GCMBaseIntentService { private static final Logger logger = AndroidLogger.forTag("MplexGcmListener"); // All onYYY methods work by constructing an appropriate Intent and broadcasting it. - + /* @Override protected void onMessage(Context context, Intent intent) { Intent newIntent = new Intent(); @@ -304,35 +289,7 @@ public class MultiplexingGcmListener extends GCMBaseIntentService { protected String[] getSenderIds(Context context) { return readSenderIdsFromManifestOrDie(this); } - - /** - * Broadcasts {@code intent} with the action set to {@link Intents#ACTION} and the package name - * set to the package name of this service. - */ - private void rebroadcast(Intent intent) { - intent.setAction(Intents.ACTION); - intent.setPackage(getPackageName()); - sendBroadcast(intent); - } - - /** - * Registers with GCM if not already registered. Also verifies that the device supports GCM - * and that the manifest is correctly configured. Returns the existing registration id, if one - * exists, or the empty string if one does not. - * - * @throws UnsupportedOperationException if the device does not have all GCM dependencies - * @throws IllegalStateException if the manifest is not correctly configured - */ - public static String initializeGcm(Context context) { - AndroidChannelPreferences.setGcmChannelType(context, GcmChannelType.DEFAULT); - GCMRegistrar.checkDevice(context); - GCMRegistrar.checkManifest(context); - final String regId = GCMRegistrar.getRegistrationId(context); - if (regId.isEmpty()) { - GCMRegistrar.register(context, readSenderIdsFromManifestOrDie(context)); - } - return regId; - } + */ /** * Returns the GCM sender ids from {@link #GCM_SENDER_IDS_METADATA_KEY} or throws a diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java --- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java +++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java @@ -48,16 +48,12 @@ public class AndroidNetworkChannel implements TestableNetworkChannel { Intent intent = ProtocolIntents.newOutboundMessageIntent(outgoingMessage); // Select the sender service to use for upstream message. - if (AndroidChannelPreferences.getGcmChannelType(context) == GcmChannelType.GCM_UPSTREAM){ - String upstreamServiceClass = new AndroidTiclManifest(context).getGcmUpstreamServiceClass(); - if (upstreamServiceClass == null || upstreamServiceClass.isEmpty()) { - logger.warning("GcmUpstreamSenderService class not found."); - return; - } - intent.setClassName(context, upstreamServiceClass); - } else { - intent.setClassName(context, AndroidMessageSenderService.class.getName()); - } + String upstreamServiceClass = new AndroidTiclManifest(context).getGcmUpstreamServiceClass(); + if (upstreamServiceClass == null || upstreamServiceClass.isEmpty()) { + logger.warning("GcmUpstreamSenderService class not found."); + return; + } + intent.setClassName(context, upstreamServiceClass); try { context.startService(intent); } catch (IllegalStateException exception) { @@ -77,6 +73,6 @@ public class AndroidNetworkChannel implements TestableNetworkChannel { @Override public NetworkEndpointId getNetworkIdForTest() { - return AndroidMessageSenderService.getNetworkEndpointId(context, resources.getLogger()); + return null; } } -- 2.7.4