| Index: chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java
|
| index 3bf0f1a3ded04c37147d4fd8d70da2e8186fe93a..eb97da8c643fe79667e392ddd6174a1e42eb7942 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java
|
| @@ -23,6 +23,23 @@ public class GcmUma {
|
| public static final int UMA_UPSTREAM_SEND_FAILED = 3;
|
| public static final int UMA_UPSTREAM_COUNT = 4;
|
|
|
| + public static void recordDataMessageReceived(Context context, final boolean hasCollapseKey) {
|
| + onNativeLaunched(context, new Runnable() {
|
| + @Override public void run() {
|
| + // There is no equivalent of the GCM Store on Android in which we can fail to find a
|
| + // registered app. It's not clear whether Google Play Services doesn't check for
|
| + // registrations, or only gives us messages that have one, but in either case we
|
| + // should log true here.
|
| + RecordHistogram.recordBooleanHistogram(
|
| + "GCM.DataMessageReceivedHasRegisteredApp", true);
|
| + RecordHistogram.recordCountHistogram(
|
| + "GCM.DataMessageReceived", 1);
|
| + RecordHistogram.recordBooleanHistogram(
|
| + "GCM.DataMessageReceivedHasCollapseKey", hasCollapseKey);
|
| + }
|
| + });
|
| + }
|
| +
|
| public static void recordGcmUpstreamHistogram(Context context, final int value) {
|
| onNativeLaunched(context, new Runnable() {
|
| @Override public void run() {
|
| @@ -32,6 +49,15 @@ public class GcmUma {
|
| });
|
| }
|
|
|
| + public static void recordDeletedMessages(Context context) {
|
| + onNativeLaunched(context, new Runnable() {
|
| + @Override public void run() {
|
| + RecordHistogram.recordCount1000Histogram(
|
| + "GCM.DeletedMessagesReceived", 0 /* unknown deleted count */);
|
| + }
|
| + });
|
| + }
|
| +
|
| private static void onNativeLaunched(final Context context, final Runnable task) {
|
| ThreadUtils.postOnUiThread(new Runnable() {
|
| @Override
|
|
|