Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1721)

Unified Diff: chrome/browser/android/metrics/uma_bridge.cc

Issue 978653002: Upstream FirstRunActivity and friends. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/android/metrics/uma_bridge.cc
diff --git a/chrome/browser/android/metrics/uma_bridge.cc b/chrome/browser/android/metrics/uma_bridge.cc
index 9577106e2e2c9415a9ce6885a652535fb48148da..0a44e031ece79ea120e773b74e09594df042e24b 100644
--- a/chrome/browser/android/metrics/uma_bridge.cc
+++ b/chrome/browser/android/metrics/uma_bridge.cc
@@ -14,6 +14,34 @@ using base::UserMetricsAction;
using content::RecordAction;
using content::RecordComputedAction;
+namespace {
+// When updating these values, remember to also update
+// tools/histograms/histograms.xml.
+enum MobileFreFinishState {
+ MOBILE_FRE_FINISH_STATE_SKIP_SIGN_IN = 0,
+ MOBILE_FRE_FINISH_STATE_SIGN_IN_SUCCESS = 1,
+ MOBILE_FRE_FINISH_STATE_SKIP_AFTER_FAIL = 2,
+ MOBILE_FRE_FINISH_STATE_BOUNDARY = 3
+};
+
+// When updating, remember to also update chrome/histograms.xml.
+enum MobileFreSignInChoice {
+ MOBILE_FRE_SIGNIN_SETTINGS_DEFAULT_ACCOUNT = 0,
+ MOBILE_FRE_SIGNIN_SETTINGS_ANOTHER_ACCOUNT = 1,
+ MOBILE_FRE_SIGNIN_ACCEPT_DEFAULT_ACCOUNT = 2,
+ MOBILE_FRE_SIGNIN_ACCEPT_ANOTHER_ACCOUNT = 3,
+ MOBILE_FRE_SIGNIN_NO_THANKS = 4,
+ MOBILE_FRE_SIGNIN_COUNT = 5
+};
+
+static std::vector<int> GetAllFREFinishStates() {
+ std::vector<int> states;
+ for (int i = 0; i < MOBILE_FRE_FINISH_STATE_BOUNDARY; i++)
+ states.push_back(i);
+ return states;
+}
+} // namespace
+
static void RecordMenuShow(JNIEnv*, jclass) {
RecordAction(UserMetricsAction("MobileMenuShow"));
}
@@ -79,6 +107,56 @@ static void RecordDataReductionProxySettings(
boundary);
}
+// First Run Experience
+static void RecordFreSkipSignIn(JNIEnv*, jclass) {
+ UMA_HISTOGRAM_CUSTOM_ENUMERATION("MobileFre.FinishState",
+ MOBILE_FRE_FINISH_STATE_SKIP_SIGN_IN,
+ // Note the third argument is only
+ // evaluated once, see macro
+ // definition for details.
+ GetAllFREFinishStates());
+}
+
+static void RecordFreSignInSuccessful(JNIEnv*, jclass) {
+ UMA_HISTOGRAM_CUSTOM_ENUMERATION("MobileFre.FinishState",
+ MOBILE_FRE_FINISH_STATE_SIGN_IN_SUCCESS,
+ GetAllFREFinishStates());
+}
+
+static void RecordFreSignInAttempted(JNIEnv*, jclass) {
+ UMA_HISTOGRAM_CUSTOM_ENUMERATION("MobileFre.FinishState",
+ MOBILE_FRE_FINISH_STATE_SKIP_AFTER_FAIL,
+ GetAllFREFinishStates());
+}
+
+// First Run Experience post M-37 (the old one above is temporarily kept to
+// match the numbers during the upgrade).
+static void RecordFreSignInShown(JNIEnv*, jclass) {
+ RecordAction(UserMetricsAction("MobileFre.SignInShown"));
+}
+
+static void RecordFreSignInAccepted(JNIEnv*, jclass,
+ jboolean show_settings,
+ jboolean default_account) {
+ const MobileFreSignInChoice choice =
+ show_settings
+ ? (default_account
+ ? MOBILE_FRE_SIGNIN_SETTINGS_DEFAULT_ACCOUNT
+ : MOBILE_FRE_SIGNIN_SETTINGS_ANOTHER_ACCOUNT)
+ : (default_account
+ ? MOBILE_FRE_SIGNIN_ACCEPT_DEFAULT_ACCOUNT
+ : MOBILE_FRE_SIGNIN_ACCEPT_ANOTHER_ACCOUNT);
+ UMA_HISTOGRAM_ENUMERATION("MobileFre.SignInChoice",
+ choice,
+ MOBILE_FRE_SIGNIN_COUNT);
+}
+
+static void RecordFreSignInDeclined(JNIEnv*, jclass) {
+ UMA_HISTOGRAM_ENUMERATION("MobileFre.SignInChoice",
+ MOBILE_FRE_SIGNIN_NO_THANKS,
+ MOBILE_FRE_SIGNIN_COUNT);
+}
+
namespace chrome {
namespace android {

Powered by Google App Engine
This is Rietveld 408576698