Skip to content

Introduction

The SAP BTP SDK for Android version 3.1 introduces several new onboarding screen UI components. For detailed information, see flow component.

The newly introduced screens consist of UI layouts, and are not concerned with the logic behind the UI. These screens follow SAP Fiori design while providing customization capabilities, and can therefore be used independently. Refer to flow component for information on onboarding cases.

Screens

The Fiori onboarding screens consist of:

Name Description Details
LaunchScreen The launch screen
ActivationScreen The activation screen Choose between Discovery Service or QR code
QRCodeReaderScreen QR code reader screen for activation
QRCodeConfirmScreen QR code confirmation screen This screen follows the QR code reader screen and can be skipped using settings
BasicAuthenticationScreen Basic authentication screen
SetPasscodeScreen The screen to create a passcode. This screen is followed by a passcode confirmation screen
ConfirmPasscodeScreen The passcode confirmation screen
EnterPasscodeScreen The screen to unlock the application with a passcode This screen is used in either the restore or change passcode flow to unlock the mobile application using the passcode
EnableFingerprintScreen The screen to enable the fingerprint After the passcode is created, this screen will be used to enable the fingerprint
FingerprintScreen The screen used to unlock the application using a fingerprint
EnableBiometricScreen The screen to enable the biometric authentication After the passcode is created, this screen will be used to enable the biometric authentication
ConfirmBiometricScreen The screen used to unlock the application with biometric information
ConsentScreen User consent screen This screen allows the user to provide consent for usage data collection in the onboarding flow. This screen can also supports multiple page consent terms, forced reading of all content before consent, etc.
EulaScreen End User License Agreement screen
OfflineInitSyncScreen The screen for offline initializing Introduced since the SAP BTP SDK for Android version 3.3.1
OfflineNetworkErrorScreen The screen to display network error during offline initializing Introduced since the SAP BTP SDK for Android version 3.3.1
OfflineTransactionIssueScreen The screen to display transaction issue during offline initializing Introduced since the SAP BTP SDK for Android version 3.3.1

Installation

dependencies {
    compile 'com.sap.cloud.android:onboarding:${versions.sapCloudAndroidSdk}'
}

Available Libraries

The following libraries are available.

Gradle Dependency Line Library
com.sap.cloud.android:onboarding:${versions.sapCloudAndroidSdk} Onboarding
com.sap.cloud.android:google-vision:${versions.sapCloudAndroidSdk} Google Vision

General Architecture

There are two main concepts in the design of these screens: Screen and ScreenSettings. Screen is the UI itself, and ScreenSettings provides screen customization capabilities.

public interface BaseScreen<T extends ScreenSettings> {
    void initialize(@NonNull T settings);
}

Each screen provides functions to allow the client code to easily access its UI controls, hook event listeners on controls, and change states of controls.

Each ScreenSettings provides properties for UI customization, such as button labels, screen titles, etc. It also has a Builder to build an instance of a ScreenSettings, allowing the instance to be passed to the initialize function and displaying the customizations in the UI.


Last update: February 20, 2023