Merge "Add extra logs for alternateBouncer" into tm-qpr-dev am: c93bbad0df
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21297442 Change-Id: Ie998928f974b06d18d7ed768716867bad95b4adb Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -23,6 +23,7 @@ import android.content.IntentFilter
|
|||||||
import android.os.Looper
|
import android.os.Looper
|
||||||
import android.os.UserHandle
|
import android.os.UserHandle
|
||||||
import com.android.internal.widget.LockPatternUtils
|
import com.android.internal.widget.LockPatternUtils
|
||||||
|
import com.android.systemui.Dumpable
|
||||||
import com.android.systemui.biometrics.AuthController
|
import com.android.systemui.biometrics.AuthController
|
||||||
import com.android.systemui.broadcast.BroadcastDispatcher
|
import com.android.systemui.broadcast.BroadcastDispatcher
|
||||||
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
|
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
|
||||||
@@ -31,7 +32,9 @@ import com.android.systemui.dagger.SysUISingleton
|
|||||||
import com.android.systemui.dagger.qualifiers.Application
|
import com.android.systemui.dagger.qualifiers.Application
|
||||||
import com.android.systemui.dagger.qualifiers.Background
|
import com.android.systemui.dagger.qualifiers.Background
|
||||||
import com.android.systemui.dagger.qualifiers.Main
|
import com.android.systemui.dagger.qualifiers.Main
|
||||||
|
import com.android.systemui.dump.DumpManager
|
||||||
import com.android.systemui.user.data.repository.UserRepository
|
import com.android.systemui.user.data.repository.UserRepository
|
||||||
|
import java.io.PrintWriter
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import kotlinx.coroutines.CoroutineDispatcher
|
import kotlinx.coroutines.CoroutineDispatcher
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
@@ -81,7 +84,18 @@ constructor(
|
|||||||
@Application scope: CoroutineScope,
|
@Application scope: CoroutineScope,
|
||||||
@Background backgroundDispatcher: CoroutineDispatcher,
|
@Background backgroundDispatcher: CoroutineDispatcher,
|
||||||
@Main looper: Looper,
|
@Main looper: Looper,
|
||||||
) : BiometricSettingsRepository {
|
dumpManager: DumpManager,
|
||||||
|
) : BiometricSettingsRepository, Dumpable {
|
||||||
|
|
||||||
|
init {
|
||||||
|
dumpManager.registerDumpable(this)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun dump(pw: PrintWriter, args: Array<String?>) {
|
||||||
|
pw.println("isFingerprintEnrolled=${isFingerprintEnrolled.value}")
|
||||||
|
pw.println("isStrongBiometricAllowed=${isStrongBiometricAllowed.value}")
|
||||||
|
pw.println("isFingerprintEnabledByDevicePolicy=${isFingerprintEnabledByDevicePolicy.value}")
|
||||||
|
}
|
||||||
|
|
||||||
/** UserId of the current selected user. */
|
/** UserId of the current selected user. */
|
||||||
private val selectedUserId: Flow<Int> =
|
private val selectedUserId: Flow<Int> =
|
||||||
|
|||||||
@@ -19,10 +19,13 @@ package com.android.systemui.keyguard.data.repository
|
|||||||
import android.hardware.biometrics.BiometricSourceType
|
import android.hardware.biometrics.BiometricSourceType
|
||||||
import com.android.keyguard.KeyguardUpdateMonitor
|
import com.android.keyguard.KeyguardUpdateMonitor
|
||||||
import com.android.keyguard.KeyguardUpdateMonitorCallback
|
import com.android.keyguard.KeyguardUpdateMonitorCallback
|
||||||
|
import com.android.systemui.Dumpable
|
||||||
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
|
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
|
||||||
import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow
|
import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow
|
||||||
import com.android.systemui.dagger.SysUISingleton
|
import com.android.systemui.dagger.SysUISingleton
|
||||||
import com.android.systemui.dagger.qualifiers.Application
|
import com.android.systemui.dagger.qualifiers.Application
|
||||||
|
import com.android.systemui.dump.DumpManager
|
||||||
|
import java.io.PrintWriter
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.channels.awaitClose
|
import kotlinx.coroutines.channels.awaitClose
|
||||||
@@ -49,7 +52,16 @@ class DeviceEntryFingerprintAuthRepositoryImpl
|
|||||||
constructor(
|
constructor(
|
||||||
val keyguardUpdateMonitor: KeyguardUpdateMonitor,
|
val keyguardUpdateMonitor: KeyguardUpdateMonitor,
|
||||||
@Application scope: CoroutineScope,
|
@Application scope: CoroutineScope,
|
||||||
) : DeviceEntryFingerprintAuthRepository {
|
dumpManager: DumpManager,
|
||||||
|
) : DeviceEntryFingerprintAuthRepository, Dumpable {
|
||||||
|
|
||||||
|
init {
|
||||||
|
dumpManager.registerDumpable(this)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun dump(pw: PrintWriter, args: Array<String?>) {
|
||||||
|
pw.println("isLockedOut=${isLockedOut.value}")
|
||||||
|
}
|
||||||
|
|
||||||
override val isLockedOut: StateFlow<Boolean> =
|
override val isLockedOut: StateFlow<Boolean> =
|
||||||
conflatedCallbackFlow {
|
conflatedCallbackFlow {
|
||||||
|
|||||||
@@ -158,18 +158,18 @@ constructor(
|
|||||||
override val bouncerErrorMessage: CharSequence?
|
override val bouncerErrorMessage: CharSequence?
|
||||||
get() = viewMediatorCallback.consumeCustomMessage()
|
get() = viewMediatorCallback.consumeCustomMessage()
|
||||||
|
|
||||||
init {
|
|
||||||
setUpLogging()
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Values associated with the AlternateBouncer */
|
/** Values associated with the AlternateBouncer */
|
||||||
private val _isAlternateBouncerVisible = MutableStateFlow(false)
|
private val _isAlternateBouncerVisible = MutableStateFlow(false)
|
||||||
override val isAlternateBouncerVisible = _isAlternateBouncerVisible.asStateFlow()
|
override val isAlternateBouncerVisible = _isAlternateBouncerVisible.asStateFlow()
|
||||||
override var lastAlternateBouncerVisibleTime: Long = NOT_VISIBLE
|
override var lastAlternateBouncerVisibleTime: Long = NOT_VISIBLE
|
||||||
private val _isAlternateBouncerUIAvailable = MutableStateFlow<Boolean>(false)
|
private val _isAlternateBouncerUIAvailable = MutableStateFlow(false)
|
||||||
override val isAlternateBouncerUIAvailable: StateFlow<Boolean> =
|
override val isAlternateBouncerUIAvailable: StateFlow<Boolean> =
|
||||||
_isAlternateBouncerUIAvailable.asStateFlow()
|
_isAlternateBouncerUIAvailable.asStateFlow()
|
||||||
|
|
||||||
|
init {
|
||||||
|
setUpLogging()
|
||||||
|
}
|
||||||
|
|
||||||
override fun setPrimaryScrimmed(isScrimmed: Boolean) {
|
override fun setPrimaryScrimmed(isScrimmed: Boolean) {
|
||||||
_primaryBouncerScrimmed.value = isScrimmed
|
_primaryBouncerScrimmed.value = isScrimmed
|
||||||
}
|
}
|
||||||
@@ -290,6 +290,9 @@ constructor(
|
|||||||
resourceUpdateRequests
|
resourceUpdateRequests
|
||||||
.logDiffsForTable(buffer, "", "ResourceUpdateRequests", false)
|
.logDiffsForTable(buffer, "", "ResourceUpdateRequests", false)
|
||||||
.launchIn(applicationScope)
|
.launchIn(applicationScope)
|
||||||
|
isAlternateBouncerUIAvailable
|
||||||
|
.logDiffsForTable(buffer, "", "IsAlternateBouncerUIAvailable", false)
|
||||||
|
.launchIn(applicationScope)
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ import com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUT
|
|||||||
import com.android.systemui.SysuiTestCase
|
import com.android.systemui.SysuiTestCase
|
||||||
import com.android.systemui.biometrics.AuthController
|
import com.android.systemui.biometrics.AuthController
|
||||||
import com.android.systemui.coroutines.collectLastValue
|
import com.android.systemui.coroutines.collectLastValue
|
||||||
|
import com.android.systemui.dump.DumpManager
|
||||||
import com.android.systemui.user.data.repository.FakeUserRepository
|
import com.android.systemui.user.data.repository.FakeUserRepository
|
||||||
import com.android.systemui.util.mockito.argumentCaptor
|
import com.android.systemui.util.mockito.argumentCaptor
|
||||||
import com.android.systemui.util.mockito.whenever
|
import com.android.systemui.util.mockito.whenever
|
||||||
@@ -56,6 +57,7 @@ class BiometricSettingsRepositoryTest : SysuiTestCase() {
|
|||||||
@Mock private lateinit var authController: AuthController
|
@Mock private lateinit var authController: AuthController
|
||||||
@Mock private lateinit var lockPatternUtils: LockPatternUtils
|
@Mock private lateinit var lockPatternUtils: LockPatternUtils
|
||||||
@Mock private lateinit var devicePolicyManager: DevicePolicyManager
|
@Mock private lateinit var devicePolicyManager: DevicePolicyManager
|
||||||
|
@Mock private lateinit var dumpManager: DumpManager
|
||||||
private lateinit var userRepository: FakeUserRepository
|
private lateinit var userRepository: FakeUserRepository
|
||||||
|
|
||||||
private lateinit var testDispatcher: TestDispatcher
|
private lateinit var testDispatcher: TestDispatcher
|
||||||
@@ -85,6 +87,7 @@ class BiometricSettingsRepositoryTest : SysuiTestCase() {
|
|||||||
scope = testScope.backgroundScope,
|
scope = testScope.backgroundScope,
|
||||||
backgroundDispatcher = testDispatcher,
|
backgroundDispatcher = testDispatcher,
|
||||||
looper = testableLooper!!.looper,
|
looper = testableLooper!!.looper,
|
||||||
|
dumpManager = dumpManager,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import com.android.keyguard.KeyguardUpdateMonitor
|
|||||||
import com.android.keyguard.KeyguardUpdateMonitorCallback
|
import com.android.keyguard.KeyguardUpdateMonitorCallback
|
||||||
import com.android.systemui.SysuiTestCase
|
import com.android.systemui.SysuiTestCase
|
||||||
import com.android.systemui.coroutines.collectLastValue
|
import com.android.systemui.coroutines.collectLastValue
|
||||||
|
import com.android.systemui.dump.DumpManager
|
||||||
import com.android.systemui.util.mockito.whenever
|
import com.android.systemui.util.mockito.whenever
|
||||||
import com.google.common.truth.Truth.assertThat
|
import com.google.common.truth.Truth.assertThat
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||||
@@ -44,6 +45,7 @@ import org.mockito.MockitoAnnotations
|
|||||||
@RunWith(JUnit4::class)
|
@RunWith(JUnit4::class)
|
||||||
class DeviceEntryFingerprintAuthRepositoryTest : SysuiTestCase() {
|
class DeviceEntryFingerprintAuthRepositoryTest : SysuiTestCase() {
|
||||||
@Mock private lateinit var keyguardUpdateMonitor: KeyguardUpdateMonitor
|
@Mock private lateinit var keyguardUpdateMonitor: KeyguardUpdateMonitor
|
||||||
|
@Mock private lateinit var dumpManager: DumpManager
|
||||||
@Captor private lateinit var callbackCaptor: ArgumentCaptor<KeyguardUpdateMonitorCallback>
|
@Captor private lateinit var callbackCaptor: ArgumentCaptor<KeyguardUpdateMonitorCallback>
|
||||||
|
|
||||||
private lateinit var testScope: TestScope
|
private lateinit var testScope: TestScope
|
||||||
@@ -59,6 +61,7 @@ class DeviceEntryFingerprintAuthRepositoryTest : SysuiTestCase() {
|
|||||||
DeviceEntryFingerprintAuthRepositoryImpl(
|
DeviceEntryFingerprintAuthRepositoryImpl(
|
||||||
keyguardUpdateMonitor,
|
keyguardUpdateMonitor,
|
||||||
testScope.backgroundScope,
|
testScope.backgroundScope,
|
||||||
|
dumpManager,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user