Add additonal logging around user switching in KeyguardUpdateMonitor
Face auth either gets cancelled or doesn't run because we think user switching is currently in progress, add more logs to KUM to identify which user switching API provides the information at the right time. Bug: 285516490 Bug: 263757590 Test: NA, logging changes Change-Id: I996044d65466c752b3c5256b27ca160edf7e03d4
This commit is contained in:
@@ -3563,6 +3563,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
*/
|
||||
@VisibleForTesting
|
||||
void handleUserSwitching(int userId, CountDownLatch latch) {
|
||||
mLogger.logUserSwitching(userId, "from UserTracker");
|
||||
Assert.isMainThread();
|
||||
clearBiometricRecognized();
|
||||
boolean trustUsuallyManaged = mTrustManager.isTrustUsuallyManaged(userId);
|
||||
@@ -3583,6 +3584,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
*/
|
||||
@VisibleForTesting
|
||||
void handleUserSwitchComplete(int userId) {
|
||||
mLogger.logUserSwitchComplete(userId, "from UserTracker");
|
||||
Assert.isMainThread();
|
||||
for (int i = 0; i < mCallbacks.size(); i++) {
|
||||
KeyguardUpdateMonitorCallback cb = mCallbacks.get(i).get();
|
||||
@@ -4036,6 +4038,11 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
|
||||
|
||||
@AnyThread
|
||||
public void setSwitchingUser(boolean switching) {
|
||||
if (switching) {
|
||||
mLogger.logUserSwitching(getCurrentUser(), "from setSwitchingUser");
|
||||
} else {
|
||||
mLogger.logUserSwitchComplete(getCurrentUser(), "from setSwitchingUser");
|
||||
}
|
||||
mSwitchingUser = switching;
|
||||
// Since this comes in on a binder thread, we need to post it first
|
||||
mHandler.post(() -> updateBiometricListeningState(BIOMETRIC_ACTION_UPDATE,
|
||||
|
||||
@@ -602,10 +602,10 @@ constructor(@KeyguardUpdateMonitorLog private val logBuffer: LogBuffer) {
|
||||
|
||||
fun allowFingerprintOnCurrentOccludingActivityChanged(allow: Boolean) {
|
||||
logBuffer.log(
|
||||
TAG,
|
||||
VERBOSE,
|
||||
{ bool1 = allow },
|
||||
{ "allowFingerprintOnCurrentOccludingActivityChanged: $bool1" }
|
||||
TAG,
|
||||
VERBOSE,
|
||||
{ bool1 = allow },
|
||||
{ "allowFingerprintOnCurrentOccludingActivityChanged: $bool1" }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -727,4 +727,28 @@ constructor(@KeyguardUpdateMonitorLog private val logBuffer: LogBuffer) {
|
||||
{ "notifying about enrollments changed: $str1" }
|
||||
)
|
||||
}
|
||||
|
||||
fun logUserSwitching(userId: Int, context: String) {
|
||||
logBuffer.log(
|
||||
TAG,
|
||||
DEBUG,
|
||||
{
|
||||
int1 = userId
|
||||
str1 = context
|
||||
},
|
||||
{ "userCurrentlySwitching: $str1, userId: $int1" }
|
||||
)
|
||||
}
|
||||
|
||||
fun logUserSwitchComplete(userId: Int, context: String) {
|
||||
logBuffer.log(
|
||||
TAG,
|
||||
DEBUG,
|
||||
{
|
||||
int1 = userId
|
||||
str1 = context
|
||||
},
|
||||
{ "userSwitchComplete: $str1, userId: $int1" }
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user