| Index: chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| index d1ac844d89ec308de7c66dbedd214265c32b717d..6021b6e7e6557c150195c967eca073187a1a5eeb 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| @@ -18,6 +18,7 @@ import org.chromium.base.Log;
|
| import org.chromium.base.ObserverList;
|
| import org.chromium.base.ThreadUtils;
|
| import org.chromium.base.annotations.CalledByNative;
|
| +import org.chromium.base.metrics.RecordHistogram;
|
| import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
|
| import org.chromium.chrome.browser.externalauth.UserRecoverableErrorHandler;
|
| import org.chromium.sync.signin.ChromeSigninController;
|
| @@ -66,6 +67,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| private final ObserverList<SignInAllowedObserver> mSignInAllowedObservers =
|
| new ObserverList<SignInAllowedObserver>();
|
|
|
| + private static int sSignInAccessPoint = SigninAccessPoint.UNKNOWN;
|
| private Activity mSignInActivity;
|
| private Account mSignInAccount;
|
| private SignInFlowObserver mSignInFlowObserver;
|
| @@ -163,6 +165,22 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| }
|
|
|
| /**
|
| + * Log the access point when the user see the view of choosing account to sign in.
|
| + * @param accessPoint the enum value of AccessPoint defined in signin_metrics.h.
|
| + */
|
| + public static void logSigninStartAccessPoint(int accessPoint) {
|
| + RecordHistogram.recordEnumeratedHistogram(
|
| + "Signin.SigninStartedAccessPoint", accessPoint, SigninAccessPoint.MAX);
|
| + sSignInAccessPoint = accessPoint;
|
| + }
|
| +
|
| + private void logSigninCompleteAccessPoint() {
|
| + RecordHistogram.recordEnumeratedHistogram(
|
| + "Signin.SigninCompletedAccessPoint", sSignInAccessPoint, SigninAccessPoint.MAX);
|
| + sSignInAccessPoint = SigninAccessPoint.UNKNOWN;
|
| + }
|
| +
|
| + /**
|
| * Notifies the SigninManager that the First Run check has completed.
|
| *
|
| * The user will be allowed to sign-in once this is signaled.
|
| @@ -488,6 +506,11 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| }
|
|
|
| SigninManager.get(mContext).logInSignedInUser();
|
| + logSigninCompleteAccessPoint();
|
| + // Log signin in reason as defined in signin_metrics.h. Right now only
|
| + // SIGNIN_PRIMARY_ACCOUNT available on Android.
|
| + RecordHistogram.recordEnumeratedHistogram("Signin.SigninReason",
|
| + SigninReason.SIGNIN_PRIMARY_ACCOUNT, SigninReason.MAX);
|
| }
|
| @Override
|
| public void onSigninCancelled() {
|
|
|