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.