diff options
| author | Aditya Wasan <adityawasan55@gmail.com> | 2020-09-08 14:24:19 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-08 14:24:19 +0530 |
| commit | ff780b02de77ae0adde23e57d9cc3245552c0f1c (patch) | |
| tree | ae89c23f916f11ed810317944b953583b07350e0 /app/src/main/java/com/zeapo/pwdstore/utils | |
| parent | c65f3c7099895f75a9babdcbacefb2290a52d758 (diff) | |
| download | HardenedPass-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.kt | 9 |
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) |
