Merge "Add UiEvent for the device starting to wake up" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
957410032e
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.systemui.keyguard;
|
||||
|
||||
import static android.app.StatusBarManager.SESSION_KEYGUARD;
|
||||
import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT;
|
||||
import static android.view.WindowManagerPolicyConstants.KEYGUARD_GOING_AWAY_FLAG_NO_WINDOW_ANIMATIONS;
|
||||
import static android.view.WindowManagerPolicyConstants.KEYGUARD_GOING_AWAY_FLAG_TO_LAUNCHER_CLEAR_SNAPSHOT;
|
||||
@@ -101,6 +102,7 @@ import androidx.annotation.VisibleForTesting;
|
||||
import com.android.app.animation.Interpolators;
|
||||
import com.android.internal.jank.InteractionJankMonitor;
|
||||
import com.android.internal.jank.InteractionJankMonitor.Configuration;
|
||||
import com.android.internal.logging.UiEventLogger;
|
||||
import com.android.internal.policy.IKeyguardDismissCallback;
|
||||
import com.android.internal.policy.IKeyguardExitCallback;
|
||||
import com.android.internal.policy.IKeyguardStateCallback;
|
||||
@@ -131,6 +133,7 @@ import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.flags.FeatureFlags;
|
||||
import com.android.systemui.flags.Flags;
|
||||
import com.android.systemui.keyguard.dagger.KeyguardModule;
|
||||
import com.android.systemui.log.SessionTracker;
|
||||
import com.android.systemui.navigationbar.NavigationModeController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.settings.UserTracker;
|
||||
@@ -1181,12 +1184,16 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
|
||||
private Lazy<ScrimController> mScrimControllerLazy;
|
||||
|
||||
private FeatureFlags mFeatureFlags;
|
||||
private final UiEventLogger mUiEventLogger;
|
||||
private final SessionTracker mSessionTracker;
|
||||
|
||||
/**
|
||||
* Injected constructor. See {@link KeyguardModule}.
|
||||
*/
|
||||
public KeyguardViewMediator(
|
||||
Context context,
|
||||
UiEventLogger uiEventLogger,
|
||||
SessionTracker sessionTracker,
|
||||
UserTracker userTracker,
|
||||
FalsingCollector falsingCollector,
|
||||
LockPatternUtils lockPatternUtils,
|
||||
@@ -1270,6 +1277,8 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
|
||||
mDreamCloseAnimationDuration = (int) LOCKSCREEN_ANIMATION_DURATION_MS;
|
||||
|
||||
mFeatureFlags = featureFlags;
|
||||
mUiEventLogger = uiEventLogger;
|
||||
mSessionTracker = sessionTracker;
|
||||
}
|
||||
|
||||
public void userActivity() {
|
||||
@@ -1660,6 +1669,13 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
|
||||
if (DEBUG) Log.d(TAG, "onStartedWakingUp, seq = " + mDelayedShowingSequence);
|
||||
notifyStartedWakingUp();
|
||||
}
|
||||
mUiEventLogger.logWithInstanceIdAndPosition(
|
||||
BiometricUnlockController.BiometricUiEvent.STARTED_WAKING_UP,
|
||||
0,
|
||||
null,
|
||||
mSessionTracker.getSessionId(SESSION_KEYGUARD),
|
||||
pmWakeReason
|
||||
);
|
||||
mUpdateMonitor.dispatchStartedWakingUp(pmWakeReason);
|
||||
maybeSendUserPresentBroadcast();
|
||||
Trace.endSection();
|
||||
|
||||
@@ -21,6 +21,7 @@ import android.content.Context;
|
||||
import android.os.PowerManager;
|
||||
|
||||
import com.android.internal.jank.InteractionJankMonitor;
|
||||
import com.android.internal.logging.UiEventLogger;
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
import com.android.keyguard.KeyguardDisplayManager;
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
@@ -50,6 +51,7 @@ import com.android.systemui.keyguard.domain.interactor.StartKeyguardTransitionMo
|
||||
import com.android.systemui.keyguard.domain.quickaffordance.KeyguardQuickAffordanceModule;
|
||||
import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger;
|
||||
import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLoggerImpl;
|
||||
import com.android.systemui.log.SessionTracker;
|
||||
import com.android.systemui.navigationbar.NavigationModeController;
|
||||
import com.android.systemui.settings.UserTracker;
|
||||
import com.android.systemui.shade.ShadeController;
|
||||
@@ -63,12 +65,12 @@ import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||
import com.android.systemui.statusbar.policy.UserSwitcherController;
|
||||
import com.android.systemui.util.DeviceConfigProxy;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import dagger.Lazy;
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
/**
|
||||
* Dagger Module providing keyguard.
|
||||
*/
|
||||
@@ -93,6 +95,8 @@ public class KeyguardModule {
|
||||
@SysUISingleton
|
||||
public static KeyguardViewMediator newKeyguardViewMediator(
|
||||
Context context,
|
||||
UiEventLogger uiEventLogger,
|
||||
SessionTracker sessionTracker,
|
||||
UserTracker userTracker,
|
||||
FalsingCollector falsingCollector,
|
||||
LockPatternUtils lockPatternUtils,
|
||||
@@ -124,6 +128,8 @@ public class KeyguardModule {
|
||||
FeatureFlags featureFlags) {
|
||||
return new KeyguardViewMediator(
|
||||
context,
|
||||
uiEventLogger,
|
||||
sessionTracker,
|
||||
userTracker,
|
||||
falsingCollector,
|
||||
lockPatternUtils,
|
||||
|
||||
@@ -190,7 +190,6 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
public enum BiometricUiEvent implements UiEventLogger.UiEventEnum {
|
||||
|
||||
@UiEvent(doc = "A biometric event of type fingerprint succeeded.")
|
||||
@@ -221,7 +220,10 @@ public class BiometricUnlockController extends KeyguardUpdateMonitorCallback imp
|
||||
BIOMETRIC_IRIS_ERROR(404),
|
||||
|
||||
@UiEvent(doc = "Bouncer was shown as a result of consecutive failed UDFPS attempts.")
|
||||
BIOMETRIC_BOUNCER_SHOWN(916);
|
||||
BIOMETRIC_BOUNCER_SHOWN(916),
|
||||
|
||||
@UiEvent(doc = "Screen started waking up with the given PowerManager wake reason.")
|
||||
STARTED_WAKING_UP(1378);
|
||||
|
||||
private final int mId;
|
||||
|
||||
|
||||
@@ -52,6 +52,8 @@ import android.view.WindowManager;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.internal.jank.InteractionJankMonitor;
|
||||
import com.android.internal.logging.InstanceId;
|
||||
import com.android.internal.logging.UiEventLogger;
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
import com.android.keyguard.KeyguardDisplayManager;
|
||||
import com.android.keyguard.KeyguardSecurityView;
|
||||
@@ -68,6 +70,7 @@ import com.android.systemui.dreams.DreamOverlayStateController;
|
||||
import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.flags.FakeFeatureFlags;
|
||||
import com.android.systemui.flags.Flags;
|
||||
import com.android.systemui.log.SessionTracker;
|
||||
import com.android.systemui.navigationbar.NavigationModeController;
|
||||
import com.android.systemui.settings.UserTracker;
|
||||
import com.android.systemui.shade.NotificationShadeWindowControllerImpl;
|
||||
@@ -77,6 +80,7 @@ import com.android.systemui.shade.ShadeWindowLogger;
|
||||
import com.android.systemui.statusbar.NotificationShadeDepthController;
|
||||
import com.android.systemui.statusbar.NotificationShadeWindowController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.phone.BiometricUnlockController;
|
||||
import com.android.systemui.statusbar.phone.CentralSurfaces;
|
||||
import com.android.systemui.statusbar.phone.DozeParameters;
|
||||
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||
@@ -143,6 +147,8 @@ public class KeyguardViewMediatorTest extends SysuiTestCase {
|
||||
private FalsingCollectorFake mFalsingCollector;
|
||||
|
||||
private @Mock CentralSurfaces mCentralSurfaces;
|
||||
private @Mock UiEventLogger mUiEventLogger;
|
||||
private @Mock SessionTracker mSessionTracker;
|
||||
|
||||
private FakeFeatureFlags mFeatureFlags;
|
||||
|
||||
@@ -543,9 +549,26 @@ public class KeyguardViewMediatorTest extends SysuiTestCase {
|
||||
assertTrue(mViewMediator.isShowingAndNotOccluded());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOnStartedWakingUp_logsUiEvent() {
|
||||
final InstanceId instanceId = InstanceId.fakeInstanceId(8);
|
||||
when(mSessionTracker.getSessionId((anyInt()))).thenReturn(instanceId);
|
||||
mViewMediator.onStartedWakingUp(PowerManager.WAKE_REASON_LIFT, false);
|
||||
|
||||
verify(mUiEventLogger).logWithInstanceIdAndPosition(
|
||||
eq(BiometricUnlockController.BiometricUiEvent.STARTED_WAKING_UP),
|
||||
anyInt(),
|
||||
any(),
|
||||
eq(instanceId),
|
||||
eq(PowerManager.WAKE_REASON_LIFT)
|
||||
);
|
||||
}
|
||||
|
||||
private void createAndStartViewMediator() {
|
||||
mViewMediator = new KeyguardViewMediator(
|
||||
mContext,
|
||||
mUiEventLogger,
|
||||
mSessionTracker,
|
||||
mUserTracker,
|
||||
mFalsingCollector,
|
||||
mLockPatternUtils,
|
||||
|
||||
Reference in New Issue
Block a user