aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/com/zeapo/pwdstore/utils
diff options
context:
space:
mode:
authorAditya Wasan <adityawasan55@gmail.com>2020-09-08 14:24:19 +0530
committerGitHub <noreply@github.com>2020-09-08 14:24:19 +0530
commitff780b02de77ae0adde23e57d9cc3245552c0f1c (patch)
treeae89c23f916f11ed810317944b953583b07350e0 /app/src/main/java/com/zeapo/pwdstore/utils
parentc65f3c7099895f75a9babdcbacefb2290a52d758 (diff)
downloadHardenedPass-ff780b02de77ae0adde23e57d9cc3245552c0f1c.tar.gz
HardenedPass-ff780b02de77ae0adde23e57d9cc3245552c0f1c.zip
Use same checks as BiometricAuthenticator in UserPreference (#1088)
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/utils')
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/utils/BiometricAuthenticator.kt9
1 files changed, 6 insertions, 3 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/utils/BiometricAuthenticator.kt b/app/src/main/java/com/zeapo/pwdstore/utils/BiometricAuthenticator.kt
index d7ecb4cd..a1b4a279 100644
--- a/app/src/main/java/com/zeapo/pwdstore/utils/BiometricAuthenticator.kt
+++ b/app/src/main/java/com/zeapo/pwdstore/utils/BiometricAuthenticator.kt
@@ -20,6 +20,7 @@ import com.zeapo.pwdstore.R
object BiometricAuthenticator {
private const val TAG = "BiometricAuthenticator"
+ private const val validAuthenticators = Authenticators.DEVICE_CREDENTIAL or Authenticators.BIOMETRIC_WEAK
sealed class Result {
data class Success(val cryptoObject: BiometricPrompt.CryptoObject?) : Result()
@@ -28,6 +29,10 @@ object BiometricAuthenticator {
object Cancelled : Result()
}
+ fun canAuthenticate(activity: FragmentActivity): Boolean {
+ return BiometricManager.from(activity).canAuthenticate(validAuthenticators) == BiometricManager.BIOMETRIC_SUCCESS
+ }
+
fun authenticate(
activity: FragmentActivity,
@StringRes dialogTitleRes: Int = R.string.biometric_prompt_title,
@@ -60,10 +65,8 @@ object BiometricAuthenticator {
callback(Result.Success(result.cryptoObject))
}
}
- val validAuthenticators = Authenticators.DEVICE_CREDENTIAL or Authenticators.BIOMETRIC_WEAK
- val canAuth = BiometricManager.from(activity).canAuthenticate(validAuthenticators) == BiometricManager.BIOMETRIC_SUCCESS
val deviceHasKeyguard = activity.getSystemService<KeyguardManager>()?.isDeviceSecure == true
- if (canAuth || deviceHasKeyguard) {
+ if (canAuthenticate(activity) || deviceHasKeyguard) {
val promptInfo = BiometricPrompt.PromptInfo.Builder()
.setTitle(activity.getString(dialogTitleRes))
.setAllowedAuthenticators(validAuthenticators)