| Index: chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebUma.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebUma.java b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebUma.java
|
| index 43a3aa1feb7d3154378d8d628be0f92ace876b75..17344c210c6a157a222d5d3e1bddbf4a59e1a2df 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebUma.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebUma.java
|
| @@ -27,6 +27,16 @@ import javax.annotation.concurrent.ThreadSafe;
|
| public class PhysicalWebUma {
|
| private static final String TAG = "PhysicalWeb";
|
| private static final String NOTIFICATION_PRESS_COUNT = "PhysicalWeb.NotificationPressed";
|
| + private static final String OPT_IN_DECLINE_BUTTON_PRESS_COUNT =
|
| + "PhysicalWeb.OptIn.DeclineButtonPressed";
|
| + private static final String OPT_IN_ENABLE_BUTTON_PRESS_COUNT =
|
| + "PhysicalWeb.OptIn.EnableButtonPressed";
|
| + private static final String OPT_IN_HIGH_PRIORITY_NOTIFICATION_COUNT =
|
| + "PhysicalWeb.OptIn.HighPriorityNotificationShown";
|
| + private static final String OPT_IN_MIN_PRIORITY_NOTIFICATION_COUNT =
|
| + "PhysicalWeb.OptIn.MinPriorityNotificationShown";
|
| + private static final String OPT_IN_NOTIFICATION_PRESS_COUNT =
|
| + "PhysicalWeb.OptIn.NotificationPressed";
|
| private static final String PREFS_FEATURE_DISABLED_COUNT = "PhysicalWeb.Prefs.FeatureDisabled";
|
| private static final String PREFS_FEATURE_ENABLED_COUNT = "PhysicalWeb.Prefs.FeatureEnabled";
|
| private static final String PREFS_LOCATION_DENIED_COUNT = "PhysicalWeb.Prefs.LocationDenied";
|
| @@ -52,6 +62,41 @@ public class PhysicalWebUma {
|
| }
|
|
|
| /**
|
| + * Records a tap on the opt-in decline button.
|
| + */
|
| + public static void onOptInDeclineButtonPressed(Context context) {
|
| + handleAction(context, OPT_IN_DECLINE_BUTTON_PRESS_COUNT);
|
| + }
|
| +
|
| + /**
|
| + * Records a tap on the opt-in enable button.
|
| + */
|
| + public static void onOptInEnableButtonPressed(Context context) {
|
| + handleAction(context, OPT_IN_ENABLE_BUTTON_PRESS_COUNT);
|
| + }
|
| +
|
| + /**
|
| + * Records a display of a high priority opt-in notification.
|
| + */
|
| + public static void onOptInHighPriorityNotificationShown(Context context) {
|
| + handleAction(context, OPT_IN_HIGH_PRIORITY_NOTIFICATION_COUNT);
|
| + }
|
| +
|
| + /**
|
| + * Records a display of a min priority opt-in notification.
|
| + */
|
| + public static void onOptInMinPriorityNotificationShown(Context context) {
|
| + handleAction(context, OPT_IN_MIN_PRIORITY_NOTIFICATION_COUNT);
|
| + }
|
| +
|
| + /**
|
| + * Records a display of the opt-in activity.
|
| + */
|
| + public static void onOptInNotificationPressed(Context context) {
|
| + handleAction(context, OPT_IN_NOTIFICATION_PRESS_COUNT);
|
| + }
|
| +
|
| + /*
|
| * Records when the user disables the Physical Web fetaure.
|
| */
|
| public static void onPrefsFeatureDisabled(Context context) {
|
| @@ -123,6 +168,13 @@ public class PhysicalWebUma {
|
| SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
|
| uploader.notificationPressCount = prefs.getInt(NOTIFICATION_PRESS_COUNT, 0);
|
| uploader.urlSelectedCount = prefs.getInt(URL_SELECTED_COUNT, 0);
|
| + uploader.optInDeclineButtonTapCount = prefs.getInt(OPT_IN_DECLINE_BUTTON_PRESS_COUNT, 0);
|
| + uploader.optInEnableButtonTapCount = prefs.getInt(OPT_IN_ENABLE_BUTTON_PRESS_COUNT, 0);
|
| + uploader.optInHighPriorityNotificationCount =
|
| + prefs.getInt(OPT_IN_HIGH_PRIORITY_NOTIFICATION_COUNT, 0);
|
| + uploader.optInMinPriorityNotificationCount =
|
| + prefs.getInt(OPT_IN_MIN_PRIORITY_NOTIFICATION_COUNT, 0);
|
| + uploader.optInNotificationPressCount = prefs.getInt(OPT_IN_NOTIFICATION_PRESS_COUNT, 0);
|
| uploader.prefsFeatureDisabledCount = prefs.getInt(PREFS_FEATURE_DISABLED_COUNT, 0);
|
| uploader.prefsFeatureEnabledCount = prefs.getInt(PREFS_FEATURE_ENABLED_COUNT, 0);
|
| uploader.prefsLocationDeniedCount = prefs.getInt(PREFS_LOCATION_DENIED_COUNT, 0);
|
| @@ -140,6 +192,11 @@ public class PhysicalWebUma {
|
| prefs.edit()
|
| .remove(NOTIFICATION_PRESS_COUNT)
|
| .remove(URL_SELECTED_COUNT)
|
| + .remove(OPT_IN_DECLINE_BUTTON_PRESS_COUNT)
|
| + .remove(OPT_IN_ENABLE_BUTTON_PRESS_COUNT)
|
| + .remove(OPT_IN_HIGH_PRIORITY_NOTIFICATION_COUNT)
|
| + .remove(OPT_IN_MIN_PRIORITY_NOTIFICATION_COUNT)
|
| + .remove(OPT_IN_NOTIFICATION_PRESS_COUNT)
|
| .remove(PREFS_FEATURE_DISABLED_COUNT)
|
| .remove(PREFS_FEATURE_ENABLED_COUNT)
|
| .remove(PREFS_LOCATION_DENIED_COUNT)
|
| @@ -194,6 +251,11 @@ public class PhysicalWebUma {
|
| private static class UmaUploader implements Runnable {
|
| public int notificationPressCount;
|
| public int urlSelectedCount;
|
| + public int optInDeclineButtonTapCount;
|
| + public int optInEnableButtonTapCount;
|
| + public int optInHighPriorityNotificationCount;
|
| + public int optInMinPriorityNotificationCount;
|
| + public int optInNotificationPressCount;
|
| public int prefsFeatureDisabledCount;
|
| public int prefsFeatureEnabledCount;
|
| public int prefsLocationDeniedCount;
|
| @@ -205,6 +267,11 @@ public class PhysicalWebUma {
|
| public boolean isEmpty() {
|
| return notificationPressCount == 0
|
| && urlSelectedCount == 0
|
| + && optInDeclineButtonTapCount == 0
|
| + && optInEnableButtonTapCount == 0
|
| + && optInHighPriorityNotificationCount == 0
|
| + && optInMinPriorityNotificationCount == 0
|
| + && optInNotificationPressCount == 0
|
| && prefsFeatureDisabledCount == 0
|
| && prefsFeatureEnabledCount == 0
|
| && prefsLocationDeniedCount == 0
|
| @@ -221,6 +288,13 @@ public class PhysicalWebUma {
|
| public void run() {
|
| uploadActions(notificationPressCount, NOTIFICATION_PRESS_COUNT);
|
| uploadActions(urlSelectedCount, URL_SELECTED_COUNT);
|
| + uploadActions(optInDeclineButtonTapCount, OPT_IN_DECLINE_BUTTON_PRESS_COUNT);
|
| + uploadActions(optInEnableButtonTapCount, OPT_IN_ENABLE_BUTTON_PRESS_COUNT);
|
| + uploadActions(optInHighPriorityNotificationCount,
|
| + OPT_IN_HIGH_PRIORITY_NOTIFICATION_COUNT);
|
| + uploadActions(optInMinPriorityNotificationCount,
|
| + OPT_IN_MIN_PRIORITY_NOTIFICATION_COUNT);
|
| + uploadActions(optInNotificationPressCount, OPT_IN_NOTIFICATION_PRESS_COUNT);
|
| uploadActions(prefsFeatureDisabledCount, PREFS_FEATURE_DISABLED_COUNT);
|
| uploadActions(prefsFeatureEnabledCount, PREFS_FEATURE_ENABLED_COUNT);
|
| uploadActions(prefsLocationDeniedCount, PREFS_LOCATION_DENIED_COUNT);
|
|
|