SAP

Manage my Account SAP Devs YouTube ↗ Learnings ↗ Community ↗ Provide Feedback ↗
Logout
⤢ Open full site

Handle Passcode with Jetpack Compose Flows Component

Learn how to use Jetpack Compose Flows component of SAP BTP SDK for Android to handle passcode change and forgetting passcode scenarios.

Overview

You will learn

  • ✔How to change passcode in Jetpack Compose Flows component
  • ✔How to handle the forgetting a passcode scenario in Jetpack Compose Flows component
Haoyue Feng H Haoyue Feng August 21, 2026
Created on May 8, 2024
Contributors

More from Haoyue Feng

See all 12 tutorials by Haoyue Feng →

Prerequisites

Steps

Details

You will learn

  • How to change passcode in Jetpack Compose Flows component
  • How to handle the forgetting a passcode scenario in Jetpack Compose Flows component

Step 1 Handle a passcode change in the Jetpack Copmpose Flows component
—

  1. Open the project you previously created using the SAP BTP SDK Wizard for Android.

  2. In Android Studio, on Windows, press Ctrl+N, or, on a Mac, press command+O, and type SettingsScreen to open SettingsScreen.kt.

  3. On Windows, press Ctrl+F12, or, on a Mac, press command+F12, and type startChangePasscodeFlow to move to the startChangePasscodeFlow method. To start the flow to change a passcode, the flow type must be FlowType.ChangePasscode for the FlowContext instance. Upon starting the flow with this FlowContext instance, the entire process to change passcode will be handled automatically.

    !

    Change passcode flow
    Change passcode flow

Kotlin
private fun startChangePasscodeFlow(
    context: Context,
    launchScope: CoroutineScope,
    snackbarHostState: SnackbarHostState
) {
    val flowContext =
        FlowContextRegistry.flowContext.copy(
            flowType = FlowType.ChangePasscode,
            flow = null
        )
    FlowUtil.startFlow(context = context, flowContext = flowContext) { resultCode, _ ->
        if (resultCode == Activity.RESULT_OK) {
            launchScope.launch {
                snackbarHostState.showSnackbar(
                    message = "Passcode changed",
                    duration = SnackbarDuration.Short
                )
            }
        }
    }
}
  1. The change passcode flow will firstly display the sign-in screen for the user to input their current passcode. When sign-in is successful with correct passcode, a set passcode flow will be started and open “Create Passcode” and “Verify Passcode” screens for user to input and verify the new passcode. The subsequent step is optional, when biometric authentication is enabled in the passcode policy and is also supported on the device, the “Enable Biometric” screen will be displayed. The user can decide whether or not to enable biometric authentication for this app. Then the flow is finished and the new passcode will take effect.

    Notice that in the sign-in screen of a change passcode flow, the FORGOT PASSCODE? button is invisible and the SWTICH OR ADD USER button in multi-user mode is also invisible.

Step 2 Handle forgetting passcode in Jetpack Compose Flows component
+

Resources

Discussion

Share feedback on this tutorial or join the conversation in SAP Community.

Submit detailed feedback Discuss in Community
Steps
Step 1 of 2
1. Handle a passcode change in the Jetpack Copmpose Flows component 2. Handle forgetting passcode in Jetpack Compose Flows component