Skip to content

Sign-In Screen

Use the Sign-In Screen screen to unlock the app using your passcode after the onboarding process.

Sign-In Screen

Definition

@Composable
fun SignInScreen(
    userId: String,
    email: String? = null,
    errorMessage: String? = null,
    disableInput: Boolean = false,
    showForgotPasscodeButton: Boolean = true,
    showUpdateBiometric: Boolean = false,
    updateBiometricChecked: Boolean = false,
    signInButtonClickListener: ((String, Boolean) -> Unit)? = null,
    forgetPasscodeClickListener: ViewClickListener? = null,
    switchAccountClickListener: ViewClickListener? = null,
    resetClickListener: ViewClickListener? = null,
    signInScreenSettings: SignInScreenSettings? = null
) { ... }

data class SignInScreenSettings(
    @StringRes val title: Int = R.string.sign_in_screen_title,
    @StringRes val signInButtonCaption: Int = R.string.sign_in_screen_title,
    @StringRes val forgotPasscodeButtonCaption: Int = R.string.sign_in_screen_forgot_passcode,
    @StringRes val switchUserButtonCaption: Int = R.string.sign_in_screen_switch_user,
    @StringRes val resetClientButtonCaption: Int = R.string.sign_in_reset_client,
    @StringRes val passcodeLabel: Int = R.string.label_passcode,
    @StringRes val passcodePlaceholder: Int = R.string.sign_in_passcode_placeholder,
    @StringRes val updateBiometricLabel: Int = R.string.sign_in_update_biometric
) : BaseScreenSettings

Arguments

Name Description
userId The current user ID.
email The email address of the current user.
disableInput Set whether the input field for the passcode is disabled or not.
errorMessage The error message. For example: "Passcode does not match."
showForgotPasscodeButton Sets whether to show the Forgot Passcode button.
showUpdateBiometric If the value is 'true', there will be a checkbox on this screen. The next step of the restore flow will be a biometric enablement screen if the checkbox is checked.
updateBiometricChecked The default value of the preceding checkbox.
signInButtonClickListener The Sign-In button click handler.
forgetPasscodeClickListener The Forgot Passcode button click handler.
switchAccountClickListener The Account Creation button click handler. It should be provided only for multiple-user apps.
resetClickListener The Reset Client button handler. It should be provided only for single-user apps.
signInScreenSettings The screen settings to customize the screen.

Example

    SignInScreen(
        userId = "my_user_id",
        email = "test_user@sap.com",
        errorMessage = "Error message",
        updateBiometricChecked = true,
        showUpdateBiometric = true,
        resetClickListener = {
            navController.popBackStack()
        }
    )

Last update: February 20, 2023