From 73695e2493af46c2375bb7678cb879d33a8aed4f Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Fri, 24 Apr 2020 15:00:33 +0530 Subject: auth: redo implementation with a cleaner and simpler API surface (#741) --- app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt') diff --git a/app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt b/app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt index 7db8cd48..b5902199 100644 --- a/app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt +++ b/app/src/main/java/com/zeapo/pwdstore/LaunchActivity.kt @@ -8,10 +8,10 @@ import android.content.Intent import android.os.Bundle import android.os.Handler import androidx.appcompat.app.AppCompatActivity +import androidx.core.content.edit import androidx.preference.PreferenceManager import com.zeapo.pwdstore.crypto.PgpActivity -import com.zeapo.pwdstore.utils.auth.AuthenticationResult -import com.zeapo.pwdstore.utils.auth.Authenticator +import com.zeapo.pwdstore.utils.BiometricAuthenticator class LaunchActivity : AppCompatActivity() { @@ -19,18 +19,20 @@ class LaunchActivity : AppCompatActivity() { super.onCreate(savedInstanceState) val prefs = PreferenceManager.getDefaultSharedPreferences(this) if (prefs.getBoolean("biometric_auth", false)) { - Authenticator(this) { + BiometricAuthenticator.authenticate(this) { when (it) { - is AuthenticationResult.Success -> { + is BiometricAuthenticator.Result.Success -> { startTargetActivity(false) } - is AuthenticationResult.UnrecoverableError -> { - finish() + is BiometricAuthenticator.Result.HardwareUnavailableOrDisabled -> { + prefs.edit { remove("biometric_auth") } + startTargetActivity(false) } - else -> { + is BiometricAuthenticator.Result.Failure, BiometricAuthenticator.Result.Cancelled -> { + finish() } } - }.authenticate() + } } else { startTargetActivity(true) } -- cgit v1.2.3