SDK Customization How-To Guide
One of the great features of the Incode Welcome SDK is that it enables you to customize the look & feel of the UI.
1. Apply custom theme and fonts
1.1 Main theme colors customization
Add the following colors to your colors.xml
:
<color name="onboard_sdk_colorPrimary">@color/onboard_sdk_brand_accentPrimary</color>
<color name="onboard_sdk_colorPrimaryDark">@color/onboard_sdk_brand_accentSecondary</color>
<color name="onboard_sdk_colorAccent">@color/onboard_sdk_brand_accentPrimary</color>
Note that onboard_sdk_colorPrimaryDark
is currently not used.
The following colors are used throughout the SDK to signify success/warning/failure.
By default, these are shades of green/orange/red respectively,
but you can customize them by adding the following colors to your colors.xml
:
<color name="onboard_sdk_state_destructive">#FF5C6F</color>
<color name="onboard_sdk_state_warn">#F3AB3C</color>
<color name="onboard_sdk_state_success">#0CD5A2</color>
The following near-grayscale colors are predefined in the SDK:
<color name="onboard_sdk_darkest">#000000</color>
<color name="onboard_sdk_darkIndigo">#20263D</color>
<color name="onboard_sdk_indigo">#2F2D51</color>
<color name="onboard_sdk_dark">#636670</color>
<color name="onboard_sdk_darkGray">#979797</color>
<color name="onboard_sdk_gray">#BCBCBC</color>
<color name="onboard_sdk_lightGray">#E9E9EB</color>
<color name="onboard_sdk_offWhite">#F9FAFF</color>
<color name="onboard_sdk_white">#FFFFFF</color>
To change Background colors in the SDK, add the following items to your styles.xml
:
<item name="onboard_sdk_BackgroundLight" type="color">@color/onboard_sdk_lightGray</item>
<item name="onboard_sdk_BackgroundDark" type="color">@color/onboard_sdk_darkIndigo</item>
<item name="onboard_sdk_BackgroundWindow" type="color">@color/onboard_sdk_white</item>
<item name="onboard_sdk_BackgroundWindow_Selfie" type="color">@color/onboard_sdk_white</item>
Note that the window background is white by default on the Selfie Scan screen.
This helps when taking a selfie in low-light conditions.
There are five different colors of text in the SDK.
To modify them, add the following items to your styles.xml
:
<item name="onboard_sdk_TextColorDefault" type="color">@color/onboard_sdk_darkIndigo</item>
<item name="onboard_sdk_TextColorLabel" type="color">@color/onboard_sdk_dark</item>
<item name="onboard_sdk_TextColorPlaceholder" type="color">@color/onboard_sdk_gray</item>
<item name="onboard_sdk_TextColorDisabled" type="color">@color/onboard_sdk_lightGray</item>
<item name="onboard_sdk_TextColorInverted" type="color">@color/onboard_sdk_white</item>
To change the fonts in the SDK, add the following items to your styles.xml
:
<item name="onboard_sdk_FontFamilyBold" type="font">@font/your_custom_bold_font</item>
<item name="onboard_sdk_FontFamilyRegular" type="font">@font/your_custom_regular_font</item>
1.2 Basic button customization (customize individual attributes of default buttons)
To customize corner radius of the buttons in the SDK, you can override the following dimension in your dimens.xml
:
<dimen name="onboard_sdk_btn_rounded_radius">32dp</dimen>
To change the size of the buttons, override the following dimension in your dimens.xml
:
*Note: Smaller value means bigger button (For full-width buttons, suggested value is 20dp).
<dimen name="onboard_sdk_btn_margins">80dp</dimen>
To change the colors of the buttons, override the following colors in your colors.xml
:
<!-- Button Primary -->
<color name="onboard_sdk_btn_primary_background_color">@color/onboard_sdk_colorPrimary</color>
<color name="onboard_sdk_btn_primary_border_color">@color/onboard_sdk_colorPrimary</color>
<!-- Button Primary Pressed -->
<color name="onboard_sdk_btn_primary_background_color_pressed">@color/onboard_sdk_darkIndigo</color>
<color name="onboard_sdk_btn_primary_border_color_pressed">@color/onboard_sdk_darkIndigo</color>
<!-- Button Primary Disabled -->
<color name="onboard_sdk_btn_primary_background_color_disabled">@color/onboard_sdk_IconColorDisabled</color>
<color name="onboard_sdk_btn_primary_border_color_disabled">@color/onboard_sdk_IconColorDisabled</color>
<!-- Button Secondary -->
<color name="onboard_sdk_btn_secondary_background_color">@color/onboard_sdk_white</color>
<color name="onboard_sdk_btn_secondary_border_color">@color/onboard_sdk_darkIndigo</color>
<!-- Button Secondary Pressed -->
<color name="onboard_sdk_btn_secondary_background_color_pressed">@color/onboard_sdk_darkIndigo</color>
<color name="onboard_sdk_btn_secondary_border_color_pressed">@color/onboard_sdk_darkIndigo</color>
<!-- Button Secondary Disabled -->
<color name="onboard_sdk_btn_secondary_background_color_disabled">@color/onboard_sdk_white</color>
<color name="onboard_sdk_btn_secondary_border_color_disabled">@color/onboard_sdk_IconColorDisabled</color>
<!-- Id Validation capture feedback background -->
<color name="onboard_sdk_id_capture_feedback_background_color">@color/onboard_sdk_black</color>
To customize the appearance of the Checkboxes, override the following drawable files in your drawable
folder:
onboard_sdk_checkbox_empty.xml
onboard_sdk_checkbox_selected.xml
onboard_sdk_checkbox2_empty.xml
onboard_sdk_checkbox2_selected.xml
Other properties that can be customized (add to your styles.xml
to override):
<item name="onboard_sdk_ButtonPrimary_FontFamily" type="font">@font/onboard_sdk_FontFamilyBold</item>
<item name="onboard_sdk_ButtonPrimary_TextColor" type="color">@color/onboard_sdk_text_colors_button_primary</item>
<item name="onboard_sdk_ButtonPrimary_Background" type="drawable">@drawable/onboard_sdk_btn_primary</item>
<item name="onboard_sdk_ButtonPrimary_MaxLines" type="integer">1</item>
<item name="onboard_sdk_ButtonPrimary_BorderWidth" type="dimen">1dp</item>
<item name="onboard_sdk_ButtonSecondary_FontFamily" type="font">@font/onboard_sdk_FontFamilyBold</item>
<item name="onboard_sdk_ButtonSecondary_TextColor" type="color">@color/onboard_sdk_text_colors_button_secondary</item>
<item name="onboard_sdk_ButtonSecondary_Background" type="drawable">@drawable/onboard_sdk_btn_secondary</item>
<item name="onboard_sdk_ButtonSecondary_MaxLines" type="integer">1</item>
<item name="onboard_sdk_ButtonSecondary_BorderWidth" type="dimen">1dp</item>
<item name="onboard_sdk_ButtonText_FontFamily" type="font">@font/onboard_sdk_FontFamilyBold</item>
<item name="onboard_sdk_ButtonText_TextColor" type="color">@color/onboard_sdk_text_colors_button_text</item>
<item name="onboard_sdk_ButtonText_Background" type="drawable">@android:color/transparent</item>
<item name="onboard_sdk_ButtonText_MaxLines" type="integer">1</item>
<item name="onboard_sdk_ButtonBig_TextSize" type="dimen">20sp</item>
<item name="onboard_sdk_ButtonBig_PaddingStart" type="dimen">80sp</item>
<item name="onboard_sdk_ButtonBig_PaddingEnd" type="dimen">80sp</item>
<item name="onboard_sdk_ButtonBig_PaddingTop" type="dimen">20sp</item>
<item name="onboard_sdk_ButtonBig_PaddingBottom" type="dimen">20sp</item>
<item name="onboard_sdk_ButtonBig_TextAllCaps" type="bool">false</item>
<item name="onboard_sdk_ButtonMedium_TextSize" type="dimen">16sp</item>
<item name="onboard_sdk_ButtonMedium_PaddingStart" type="dimen">48sp</item>
<item name="onboard_sdk_ButtonMedium_PaddingEnd" type="dimen">48sp</item>
<item name="onboard_sdk_ButtonMedium_PaddingTop" type="dimen">12sp</item>
<item name="onboard_sdk_ButtonMedium_PaddingBottom" type="dimen">12sp</item>
<item name="onboard_sdk_ButtonMedium_TextAllCaps" type="bool">true</item>
<item name="onboard_sdk_ButtonSmall_TextSize" type="dimen">12sp</item>
<item name="onboard_sdk_ButtonSmall_PaddingStart" type="dimen">14sp</item>
<item name="onboard_sdk_ButtonSmall_PaddingEnd" type="dimen">14sp</item>
<item name="onboard_sdk_ButtonSmall_PaddingTop" type="dimen">12sp</item>
<item name="onboard_sdk_ButtonSmall_PaddingBottom" type="dimen">12sp</item>
<item name="onboard_sdk_ButtonSmall_TextAllCaps" type="bool">true</item>
<item name="onboard_sdk_IncodeSnackbar_Background_Color" type="color">@color/onboard_sdk_state_destructive</item>
<item name="onboard_sdk_IncodeSnackbar_Content_TextColor" type="color">@color/onboard_sdk_white</item>
<item name="onboard_sdk_IncodeSnackbar_Content_TextSize" type="dimen">14sp</item>
<item name="onboard_sdk_IncodeSnackbar_Content_FontFamily" type="font">@font/onboard_sdk_FontFamilyRegular</item>
<item name="onboard_sdk_IncodeSnackbar_Content_FontWeight" type="integer">700</item>
<item name="onboard_sdk_IncodeSnackbar_Action_TextColor" type="color">@color/onboard_sdk_white</item>
<item name="onboard_sdk_IncodeSnackbar_Action_TextSize" type="dimen">20sp</item>
<item name="onboard_sdk_IncodeSnackbar_Action_FontFamily" type="font">@font/onboard_sdk_FontFamilyRegular</item>
<item name="onboard_sdk_IncodeSnackbar_Action_FontWeight" type="integer">700</item>
1.3 Advanced button customization
If you wish to fully customize buttons, you can specify your own styles in styles.xml
.
There are three types of buttons: Primary
, Secondary
and Text
.
Each of the three types of buttons has three variants: Big
, Medium
and Small
.
You can customize common styles (onboard_sdk_ButtonPrimary
, onboard_sdk_ButtonSecondary
, onboard_sdk_ButtonText
) as well as individual variants (onboard_sdk_ButtonPrimaryBig
, etc.).
By default, medium and small variants use textAllCaps = true
.
<style name="onboard_sdk_ButtonPrimary" parent="onboard_sdk_BaseButtonPrimary">
<item name="android:background">@drawable/my_custom_background_drawable</item>
...
</style>
<style name="onboard_sdk_ButtonPrimaryBig" parent="onboard_sdk_BaseButtonPrimaryBig">
<item name="layout_constraintWidth_min">200dp</item>
...
</style>
<style name="onboard_sdk_ButtonPrimaryMedium" parent="onboard_sdk_BaseButtonPrimaryMedium">...</style>
<style name="onboard_sdk_ButtonPrimarySmall" parent="onboard_sdk_BaseButtonPrimarySmall">...</style>
<style name="onboard_sdk_ButtonSecondary" parent="onboard_sdk_BaseButtonSecondary">...</style>
<style name="onboard_sdk_ButtonSecondaryBig" parent="onboard_sdk_BaseButtonSecondaryBig">...</style>
<style name="onboard_sdk_ButtonSecondaryMedium" parent="onboard_sdk_BaseButtonSecondaryMedium">...</style>
<style name="onboard_sdk_ButtonSecondarySmall" parent="onboard_sdk_BaseButtonSecondarySmall">...</style>
<style name="onboard_sdk_ButtonText" parent="onboard_sdk_BaseButtonText">...</style>
<style name="onboard_sdk_ButtonTextBig" parent="onboard_sdk_BaseButtonTextBig">...</style>
<style name="onboard_sdk_ButtonTextMedium" parent="onboard_sdk_BaseButtonTextMedium">...</style>
<style name="onboard_sdk_ButtonTextSmall" parent="onboard_sdk_BaseButtonTextSmall">...</style>
1.4 Customization of other UI elements
To change the color of exit dialog buttons/texts, override the following colors:
<!-- Update the color of all exit dialog texts -->
<item name="onboard_sdk_ExitDialog_TextColor" type="color">@color/onboard_sdk_black</item>
<!-- Update each color individually -->
<item name="onboard_sdk_ExitDialog_TextColor_Title" type="color">@color/onboard_sdk_ExitDialog_TextColor</item>
<item name="onboard_sdk_ExitDialog_TextColor_Description" type="color">@color/onboard_sdk_ExitDialog_TextColor</item>
<item name="onboard_sdk_ExitDialog_TextColor_PositiveButton" type="color">@color/onboard_sdk_ExitDialog_TextColor</item>
<item name="onboard_sdk_ExitDialog_TextColor_NegativeButton" type="color">@color/onboard_sdk_ExitDialog_TextColor</item>
To change the exit dialog color/font of positive/negative buttons, override the following styles:
<!-- Postive Button -->
<style name="onboard_sdk_ExitDialog_PositiveButton" parent="onboard_sdk_BaseExitDialog_PositiveButton">
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyRegular</item>
<item name="android:textColor">@color/onboard_sdk_ExitDialog_TextColor_PositiveButton</item>
</style>
<!-- Negative Button -->
<style name="onboard_sdk_ExitDialog_NegativeButton" parent="onboard_sdk_BaseExitDialog_NegativeButton">
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyRegular</item>
<item name="android:textColor">@color/onboard_sdk_ExitDialog_TextColor_NegativeButton</item>
</style>
To customize the exit dialog, override the following style:
<style name="onboard_sdk_ExitDialog" parent="onboard_sdk_BaseExitDialog">
<!-- Exit Dialog Font -->
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyRegular</item>
<!-- Exit Dialog Title text color -->
<item name="android:textColor">@color/onboard_sdk_ExitDialog_TextColor_Title</item>
<!-- Exit Dialog Description text color -->
<item name="android:textColorPrimary">@color/onboard_sdk_ExitDialog_TextColor_Description</item>
<!-- Exit Dialog Positive Button style -->
<item name="buttonBarPositiveButtonStyle">@style/onboard_sdk_ExitDialog_PositiveButton</item>
<!-- Exit Dialog Negative Button style -->
<item name="buttonBarNegativeButtonStyle">@style/onboard_sdk_ExitDialog_NegativeButton</item>
</style>
To change the color of the camera outline on the Selfie screen, override the following color:
<item name="onboard_sdk_SelfieCircleCameraOutline" type="color">@android:color/black</item>
To change the style of the progress bar that is displayed while uploading documents, override these items in your styles.xml
:
By default, the progress bar will use onboard_sdk_BackgroundLight
and onboard_sdk_colorPrimary
colors.
<item name="onboard_sdk_ProgressBar_Height" type="dimen">6dp</item>
<item name="onboard_sdk_ProgressBar_ProgressDrawable" type="drawable">@drawable/onboard_sdk_progress_bar_round</item>
To change the background for each item in Capture Failed -> Common Issues screen, override the following drawable:
@drawable/onboard_sdk_background_capture_error_item
or just override the color:
<item name="onboard_sdk_Background_CaptureErrorItem" type="color">@color/onboard_sdk_lightGray</item>
To change the background and text color of the countdown animation in the ID/Passport scan screen, override the following colors:
<item name="onboard_sdk_CountdownAnimation_BackgroundColor" type="color">@color/onboard_sdk_brand_accentPrimary</item>
<item name="onboard_sdk_CountdownAnimation_TextColor" type="color">@color/onboard_sdk_white</item>
To change the color of the waveform on the Video Selfie screen, override the following color:
<item name="onboard_sdk_Waveform" type="color">@color/onboard_sdk_white</item>
Customizing colors and fonts should cover most use-cases.
In case you want to have finer control over UI elements' styling,
here is a complete list of customizable UI elements
(override the following styles in your styles.xml
):
<style name="onboard_sdk_Headline1" parent="onboard_sdk_BaseHeadline1">...</style>
<style name="onboard_sdk_Headline2" parent="onboard_sdk_BaseHeadline2">...</style>
<style name="onboard_sdk_Headline3" parent="onboard_sdk_BaseHeadline3">...</style>
<style name="onboard_sdk_Headline4" parent="onboard_sdk_BaseHeadline4">...</style>
<style name="onboard_sdk_InputSpecial" parent="onboard_sdk_BaseInputSpecial">...</style>
<style name="onboard_sdk_InputBig" parent="onboard_sdk_BaseInputBig">...</style>
<style name="onboard_sdk_InputSmall" parent="onboard_sdk_BaseInputSmall">...</style>
<style name="onboard_sdk_InputEditText" parent="onboard_sdk_BaseInputEditText">...</style>
<style name="onboard_sdk_InputEditTextError" parent="onboard_sdk_BaseInputEditTextError">...</style>
<style name="onboard_sdk_InputSpinner" parent="onboard_sdk_BaseInputSpinner">...</style>
<style name="onboard_sdk_BodyBig" parent="onboard_sdk_BaseBodyBig">...</style>
<style name="onboard_sdk_BodyLead" parent="onboard_sdk_BaseBodyLead">...</style>
<style name="onboard_sdk_BodyQuote" parent="onboard_sdk_BaseBodyQuote">...</style>
<style name="onboard_sdk_BodyLongText" parent="onboard_sdk_BaseBodyLongText">...</style>
<style name="onboard_sdk_LabelBig" parent="onboard_sdk_BaseLabelBig">...</style>
<style name="onboard_sdk_LabelSmall" parent="onboard_sdk_BaseLabelSmall">...</style>
<style name="onboard_sdk_ButtonPrimary" parent="onboard_sdk_BaseButtonPrimary">...</style>
<style name="onboard_sdk_ButtonPrimaryBig" parent="onboard_sdk_BaseButtonPrimaryBig">...</style>
<style name="onboard_sdk_ButtonPrimaryMedium" parent="onboard_sdk_BaseButtonPrimaryMedium">...</style>
<style name="onboard_sdk_ButtonPrimarySmall" parent="onboard_sdk_BaseButtonPrimarySmall">...</style>
<style name="onboard_sdk_ButtonSecondary" parent="onboard_sdk_BaseButtonSecondary">...</style>
<style name="onboard_sdk_ButtonSecondaryBig" parent="onboard_sdk_BaseButtonSecondaryBig">...</style>
<style name="onboard_sdk_ButtonSecondaryMedium" parent="onboard_sdk_BaseButtonSecondaryMedium">...</style>
<style name="onboard_sdk_ButtonSecondarySmall" parent="onboard_sdk_BaseButtonSecondarySmall">...</style>
<style name="onboard_sdk_ButtonText" parent="onboard_sdk_BaseButtonText">...</style>
<style name="onboard_sdk_ButtonTextBig" parent="onboard_sdk_BaseButtonTextBig">...</style>
<style name="onboard_sdk_ButtonTextMedium" parent="onboard_sdk_BaseButtonTextMedium">...</style>
<style name="onboard_sdk_ButtonTextSmall" parent="onboard_sdk_BaseButtonTextSmall">...</style>
<style name="onboard_sdk_ProgressBar" parent="onboard_sdk_BaseProgressBar">...</style>
<style name="onboard_sdk_ProgressBarIndeterminate" parent="onboard_sdk_BaseProgressBarIndeterminate">...</style>
<style name="onboard_sdk_Divider" parent="onboard_sdk_BaseDivider">...</style>
<style name="onboard_sdk_BottomSheetItem" parent="onboard_sdk_BaseBottomSheetItem">...</style>
<style name="onboard_sdk_ScanFeedbackTextSmall" parent="onboard_sdk_BaseScanFeedbackTextSmall">...</style>
<style name="onboard_sdk_ScanFeedbackTextBig" parent="onboard_sdk_BaseScanFeedbackTextBig">...</style>
<style name="onboard_sdk_ManualCaptureInstructionsText" parent="onboard_sdk_BaseManualCaptureInstructionsText">...</style>
<style name="onboard_sdk_ExitDialog_PositiveButton" parent="onboard_sdk_BaseExitDialog_PositiveButton">...</style>
<style name="onboard_sdk_ExitDialog_NegativeButton" parent="onboard_sdk_BaseExitDialog_NegativeButton">...</style>
<style name="onboard_sdk_ExitDialog" parent="onboard_sdk_BaseExitDialog">...</style>
<style name="onboard_sdk_CountdownAnimationBackground" parent="onboard_sdk_BaseCountdownAnimationBackground">...</style>
<style name="onboard_sdk_CountdownAnimationText" parent="onboard_sdk_BaseCountdownAnimationText">...</style>
<style name="onboard_sdk_IncodeSnackbar_Content" parent="onboard_sdk_IncodeSnackbar_BaseContent">...</style>
<style name="onboard_sdk_IncodeSnackbar_Action" parent="onboard_sdk_IncodeSnackbar_BaseAction">...</style>
<style name="onboard_sdk_IncodeSnackbar_Background" parent="onboard_sdk_IncodeSnackbar_BaseBackground">...</style>
Some of the UI elements have their own Styles that inherit from these General styles, but can also be customized individually:
<!-- Need Help Button (inherits from onboard_sdk_ButtonSecondarySmall) -->
<style name="onboard_sdk_ButtonNeedHelp" parent="onboard_sdk_BaseButtonNeedHelp"></style>
<!-- Need Help Manual Capture Button (inherits from onboard_sdk_ButtonTextSmall) -->
<style name="onboard_sdk_ButtonNeedHelpManualCapture" parent="onboard_sdk_BaseButtonNeedHelpManualCapture"></style>
<!-- Manual Capture Instructions Text (inherits from onboard_sdk_LabelBig) -->
<style name="onboard_sdk_ManualCaptureInstructionsText" parent="onboard_sdk_BaseManualCaptureInstructionsText"></style>
2. Theme configuration
This guide explains how to use the theme configuration feature in the Welcome SDK to dynamically load styles.
This feature is useful when using multiple styles for a single 'View' (e.g. Button),
and you want to switch between them depending on the preferences of your users.
Prerequisites
Make sure you have the extensions
dependency in your build.gradle
:
implementation 'com.incode.sdk:extensions:1.1.0'
Usage
Setting a custom theme
First create your theme:
<style name="CustomTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#00B2FD</item>
<item name="colorPrimaryDark">#2266D8</item>
<item name="colorAccent">#00B2FD</item>
<item name="android:textColor">#20263D</item>
<item name="android:windowBackground">#FFFFFF</item>
<item name="android:windowTranslucentStatus" tools:targetApi="kitkat">true</item>
<item name="android:windowContentTransitions">true</item>
</style>
Then create ThemeConfiguration
and set it through CommonConfig
:
val themeConfiguration: ThemeConfiguration = ThemeConfiguration.Builder()
.setCustomTheme(R.style.CustomTheme)
.build()
val commonConfig: CommonConfig = CommonConfig.Builder()
.setThemeConfiguration(themeConfiguration)
.build()
IncodeWelcome.getInstance().setCommonConfig(commonConfig)
ThemeConfiguration themeConfiguration = new ThemeConfiguration.Builder()
.setCustomTheme(R.style.CustomTheme)
.build();
CommonConfig commonConfig = new CommonConfig.Builder()
.setThemeConfiguration(themeConfiguration)
.build();
IncodeWelcome.getInstance().setCommonConfig(commonConfig);
Setting view styles
Create your own styles in XML:
<style name="Headline1">
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyBold</item>
<item name="android:textColor">#2266D8</item>
<item name="android:textSize">32sp</item>
<item name="android:maxLines">2</item>
<item name="android:lineSpacingExtra">0sp</item>
<item name="android:gravity">center_horizontal</item>
<item name="autoSizeTextType">uniform</item>
<item name="autoSizeMinTextSize">10sp</item>
</style>
<style name="Headline2">
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyBold</item>
<item name="android:textColor">#2266D8</item>
<item name="android:textSize">26sp</item>
<item name="android:maxLines">2</item>
<item name="android:lineSpacingExtra">0sp</item>
<item name="android:gravity">center_horizontal</item>
<item name="autoSizeTextType">uniform</item>
<item name="autoSizeMinTextSize">10sp</item>
</style>
Or extend our styles:
<style name="Headline1" parent="onboard_sdk_Headline1">
<item name="android:fontFamily">@font/onboard_sdk_FontFamilyBold</item>
<item name="android:textColor">#2266D8</item>
<item name="android:textSize">32sp</item>
<item name="android:maxLines">2</item>
</style>
ThemeConfiguration
offers a defined set of methods for applying your own style per view type e.g. Headline1
, LabelBig
, etc.
Use some or all of the following methods to override default styles with your own:
val themeConfiguration: ThemeConfiguration = ThemeConfiguration.Builder()
.setHeadline1Style(R.style.Headline1)
.setHeadline2Style(R.style.Headline2)
.setHeadline3Style(R.style.Headline3)
.setHeadline4Style(R.style.Headline4)
.setBodyBigStyle(R.style.BodyBig)
.setBodyLeadStyle(R.style.BodyLead)
.setBodyQuoteStyle(R.style.BodyQuote)
.setBodyLongTextStyle(R.style.BodyLongText)
.setLabelBigStyle(R.style.LabelBig)
.setLabelSmallStyle(R.style.LabelSmall)
.setBottomSheetItemStyle(R.style.BottomSheetItem)
.setScanFeedbackTextSmallStyle(R.style.ScanFeedbackTextSmall)
.setScanFeedbackTextBigStyle(R.style.ScanFeedbackTextBig)
.setManualCaptureInstructionsTextStyle(R.style.ManualCaptureInstructionsText)
.setInputSpecialStyle(R.style.InputSpecial)
.setInputBigStyle(R.style.InputBig)
.setInputSmallStyle(R.style.InputSmall)
.setInputEditTextStyle(R.style.Input)
.setInputEditTextErrorStyle(R.style.InputError)
.setInputSpinnerStyle(R.style.InputSpinner)
.setSpinnerStyle(R.style.Spinner)
.setButtonPrimaryBigStyle(R.style.ButtonBig)
.setButtonPrimaryMediumStyle(R.style.ButtonMedium)
.setButtonPrimarySmallStyle(R.style.ButtonSmall)
.setButtonSecondaryBigStyle(R.style.ButtonSecodnarySmall)
.setButtonSecondaryMediumStyle(R.style.ButtonSecodnaryMedium)
.setButtonSecondarySmallStyle(R.style.ButtonSecodnarySmall)
.setButtonTextBigStyle(R.style.ButtonTextBig)
.setButtonTextMediumStyle(R.style.ButtonTextMedium)
.setButtonTextSmallStyle(R.style.ButtonTextSmall)
.setButtonNeedHelpManualCaptureStyle(R.style.ButtonNeedHelpManualCapture)
.setDividerStyle(R.style.DividerStyle)
.build()
val commonConfig: CommonConfig = CommonConfig.Builder()
.setThemeConfiguration(themeConfiguration)
.build()
IncodeWelcome.getInstance().setCommonConfig(commonConfig)
ThemeConfiguration themeConfiguration = new ThemeConfiguration.Builder()
.setHeadline1Style(R.style.Headline1)
.setHeadline2Style(R.style.Headline2)
.setHeadline3Style(R.style.Headline3)
.setHeadline4Style(R.style.Headline4)
.setBodyBigStyle(R.style.BodyBig)
.setBodyLeadStyle(R.style.BodyLead)
.setBodyQuoteStyle(R.style.BodyQuote)
.setBodyLongTextStyle(R.style.BodyLongText)
.setLabelBigStyle(R.style.LabelBig)
.setLabelSmallStyle(R.style.LabelSmall)
.setBottomSheetItemStyle(R.style.BottomSheetItem)
.setScanFeedbackTextSmallStyle(R.style.ScanFeedbackTextSmall)
.setScanFeedbackTextBigStyle(R.style.ScanFeedbackTextBig)
.setManualCaptureInstructionsTextStyle(R.style.ManualCaptureInstructionsText)
.setInputSpecialStyle(R.style.InputSpecial)
.setInputBigStyle(R.style.InputBig)
.setInputSmallStyle(R.style.InputSmall)
.setInputEditTextStyle(R.style.Input)
.setInputEditTextErrorStyle(R.style.InputError)
.setInputSpinnerStyle(R.style.InputSpinner)
.setSpinnerStyle(R.style.Spinner)
.setButtonPrimaryBigStyle(R.style.ButtonBig)
.setButtonPrimaryMediumStyle(R.style.ButtonMedium)
.setButtonPrimarySmallStyle(R.style.ButtonSmall)
.setButtonSecondaryBigStyle(R.style.ButtonSecodnarySmall)
.setButtonSecondaryMediumStyle(R.style.ButtonSecodnaryMedium)
.setButtonSecondarySmallStyle(R.style.ButtonSecodnarySmall)
.setButtonTextBigStyle(R.style.ButtonTextBig)
.setButtonTextMediumStyle(R.style.ButtonTextMedium)
.setButtonTextSmallStyle(R.style.ButtonTextSmall)
.setButtonNeedHelpManualCaptureStyle(R.style.ButtonNeedHelpManualCapture)
.setDividerStyle(R.style.DividerStyle)
.build();
CommonConfig commonConfig = new CommonConfig.Builder()
.setThemeConfiguration(themeConfiguration)
.build();
IncodeWelcome.getInstance().setCommonConfig(commonConfig);
3. Changing texts
3.1 Override strings.xml
strings.xml
If you wish to change specific texts that are displayed to the user throughout the flow, just add these strings to your strings.xml
. If your app is localized to multiple languages, please make sure you put their translations in corresponding strings.xml
files as well. The SDK provides default texts for English (en), Spanish (es), and Portuguese (pt) locales.
For the list of customizable text in modules that support Capture-Only Mode, see the Customizable Strings section of the Capture-Only Mode documentation.
All other customizable text elements are listed below:
<!-- CAPTURE-ONLY MODE STRINGS -->
<string name="onboard_sdk_dialog_camera_permissions_mandatory_title">Incode Welcome needs\nCamera access to work</string>
<string name="onboard_sdk_dialog_location_permissions_mandatory_title">Incode Welcome needs\nLocation access to work</string>
<string name="onboard_sdk_dialog_microphone_permissions_mandatory_title">Incode Welcome needs\nMicrophone access to work</string>
<string name="onboard_sdk_dialog_camera_permissions_mandatory_subtitle">Please open Settings, go to\nApp Permissions and enable Camera</string>
<string name="onboard_sdk_dialog_location_permissions_mandatory_subtitle">Please open Settings, go to\nApp Permissions and enable Location</string>
<string name="onboard_sdk_dialog_microphone_permissions_mandatory_subtitle">Please open Settings, go to\nApp Permissions and enable Microphone</string>
<string name="onboard_sdk_dialog_permission_btn_open_settings">Open settings</string>
<string name="onboard_sdk_btn_continue">Continue</string>
<string name="onboard_sdk_ok">OK</string>
<string name="onboard_sdk_btn_skip">Skip</string>
<string name="onboard_sdk_btn_next">Next</string>
<string name="onboard_sdk_btn_start">Start</string>
<!-- IntroActivity -->
<string name="onboard_sdk_intro_title">For this process you will need:</string>
<string name="onboard_sdk_intro_check_id">Valid ID</string>
<string name="onboard_sdk_intro_check_passport">Valid Passport</string>
<string name="onboard_sdk_intro_check_id_or_passport">Valid ID or Passport</string>
<string name="onboard_sdk_intro_check_address">Recent Proof of Address</string>
<string name="onboard_sdk_intro_check_selfie">To take a Selfie</string>
<string name="onboard_sdk_intro_check_medical_doc">Valid Medical Document</string>
<string name="onboard_sdk_intro_check_other_doc">Valid Document</string>
<string name="onboard_sdk_intro_data_protected_label">Your data is protected by Incode</string>
<string name="onboard_sdk_intro_data_protected_highlighted_text">Incode</string>
<string name="onboard_sdk_intro_confirm_btn">I Confirm</string>
<string name="onboard_sdk_intro_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- PhoneNumberActivity -->
<string name="onboard_sdk_enter_phone_number">Enter phone number</string>
<string name="onboard_sdk_error_unknown_error">Unknown error</string>
<string name="onboard_sdk_phone_number_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- EmailAddressActivity -->
<string name="onboard_sdk_enter_email_address">Enter your email</string>
<string name="onboard_sdk_email_address_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- NameActivity -->
<string name="onboard_sdk_enter_name">Enter your name</string>
<!-- Common SelectSourceActivity -->
<string name="onboard_sdk_select_document_source_photo_library">Photo Library</string>
<string name="onboard_sdk_select_document_source_take_photo">Take Photo</string>
<string name="onboard_sdk_select_document_source_browse">Browse…</string>
<string name="onboard_sdk_select_document_source_error_opening_file">Error opening file</string>
<!-- SelectAddressStatementSourceActivity -->
<string name="onboard_sdk_select_address_statement_source_title">Upload a document to verify your identity</string>
<string name="onboard_sdk_select_address_statement_source_subtitle">This can be any legal documentation that proves your address.</string>
<string name="onboard_sdk_select_address_statement_source_bottom_text">Take a photo or upload a PDF, JPG, or PNG</string>
<string name="onboard_sdk_select_address_statement_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelectPaymentProofSourceActivity -->
<string name="onboard_sdk_select_payment_proof_source_title">Upload your proof of payment</string>
<string name="onboard_sdk_select_payment_proof_source_subtitle">This can be a document from your bank or electronic invoice that shows a specific transaction.</string>
<string name="onboard_sdk_select_payment_proof_source_bottom_text">Take a photo or upload JPG, PNG</string>
<string name="onboard_sdk_select_payment_proof_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelectMedicalDocSourceActivity -->
<string name="onboard_sdk_select_medical_doc_source_title">Upload your medical document</string>
<string name="onboard_sdk_select_medical_doc_source_subtitle">This can be a document that shows you are medically insured.</string>
<string name="onboard_sdk_select_medical_doc_source_bottom_text">Take a photo or upload JPG, PNG</string>
<string name="onboard_sdk_select_medical_doc_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelectOtherDocument1SourceActivity -->
<string name="onboard_sdk_select_other_document_1_source_title">Upload a document to verify your identity</string>
<string name="onboard_sdk_select_other_document_1_source_subtitle">This can be any legal documentation that proves your identity.</string>
<string name="onboard_sdk_select_other_document_1_source_bottom_text">Take a photo or upload JPG, PNG</string>
<string name="onboard_sdk_select_other_document_1_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelectOtherDocument2SourceActivity -->
<string name="onboard_sdk_select_other_document_2_source_title">Upload a document to verify your identity</string>
<string name="onboard_sdk_select_other_document_2_source_subtitle">This can be any legal documentation that proves your identity.</string>
<string name="onboard_sdk_select_other_document_2_source_bottom_text">Take a photo or upload JPG, PNG</string>
<string name="onboard_sdk_select_other_document_2_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelectOtherDocument3SourceActivity -->
<string name="onboard_sdk_select_other_document_3_source_title">Upload a document to verify your identity</string>
<string name="onboard_sdk_select_other_document_3_source_subtitle">This can be any legal documentation that proves your identity.</string>
<string name="onboard_sdk_select_other_document_3_source_bottom_text">Take a photo or upload JPG, PNG</string>
<string name="onboard_sdk_select_other_document_3_source_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- TutorialDocumentScanActivity -->
<string name="onboard_sdk_tutorial_document_scan_title">Place your document within the frame and take the photo</string>
<string name="onboard_sdk_tutorial_document_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- TutorialSelfieActivity -->
<string name="onboard_sdk_tutorial_selfie_title">Let’s take a selfie</string>
<string name="onboard_sdk_tutorial_selfie_subtitle">Keep a neutral expression, find balanced light, and remove any glasses or hats</string>
<string name="onboard_sdk_tutorial_selfie_animation_content_description">Place your phone an arm’s distance in front of your face. The image will be taken automatically.</string>
<string name="onboard_sdk_age_verification_selfie_title">Age verification</string>
<string name="onboard_sdk_age_verification_selfie_subtitle">Please take a selfie to estimate your age, your data is private, your face is not stored or shared</string>
<string name="onboard_sdk_age_verification_selfie_instructions">@string/onboard_sdk_tutorial_selfie_subtitle</string>
<!-- IDTypeChooserActivity -->
<string name="onboard_sdk_id_type_chooser_title">Select what document you want to scan</string>
<string name="onboard_sdk_btn_id">Driver License\nID Card\nResident Card</string>
<string name="onboard_sdk_btn_passport">Passport\nVisa</string>
<!-- TutorialFrontActivity -->
<string name="onboard_sdk_tutorial_front_1_title">Place your\nID inside the frame</string>
<string name="onboard_sdk_tutorial_front_2_title">Avoid\nshadows and glare </string>
<string name="onboard_sdk_tutorial_front_3_title">Make sure\nthe photo is sharp</string>
<string name="onboard_sdk_tutorial_front_4_title">Make sure\ninfo is readable</string>
<string name="onboard_sdk_tutorial_front_voice_over">Place your ID up to the back camera of your phone and slowly move the ID while holding your phone in position. The capture will happen automatically.</string>
<!-- TutorialPassportActivity -->
<string name="onboard_sdk_tutorial_passport_1_title">Place your Passport inside the\nframe and take a photo</string>
<string name="onboard_sdk_tutorial_passport_2_title">Avoid\nshadows and glare </string>
<string name="onboard_sdk_tutorial_passport_3_title">Make sure\nthe photo is sharp</string>
<string name="onboard_sdk_tutorial_passport_4_title">Make sure\ninfo is readable</string>
<string name="onboard_sdk_tutorial_passport_voice_over">@string/onboard_sdk_tutorial_front_voice_over</string>
<!-- TutorialBackActivity -->
<string name="onboard_sdk_tutorial_back_title">Now show the\nback side of your ID</string>
<string name="onboard_sdk_tutorial_back_title_highlighted_part">back side</string>
<string name="onboard_sdk_tutorial_back_subtitle_1">Avoid shadows and glare</string>
<string name="onboard_sdk_tutorial_back_subtitle_2">The photo will be taken automatically</string>
<string name="onboard_sdk_tutorial_back_btn_continue">@string/onboard_sdk_btn_continue</string>
<string name="onboard_sdk_tutorial_back_voice_over">@string/onboard_sdk_tutorial_front_voice_over</string>
<!-- IdValidationFeedback -->
<string name="onboard_sdk_validation_autocapture_hold_still">Don’t move!\nTaking photo…</string>
<string name="onboard_sdk_validation_fill_rectangle_with_id">Fill the rectangle\nwith your ID</string>
<string name="onboard_sdk_validation_fill_rectangle_with_passport">Fill the rectangle\nwith your Passport</string>
<string name="onboard_sdk_validation_warn_show_front">Show the front of the ID</string>
<string name="onboard_sdk_validation_warn_show_back">Show the back of the ID</string>
<string name="onboard_sdk_validation_manual_capture_instructions">1. Put ID in the frame\n2. Press capture button</string>
<string name="onboard_sdk_validation_warn_id_too_dark">Too dark</string>
<string name="onboard_sdk_validation_warn_id_out_of_focus">ID out of focus</string>
<string name="onboard_sdk_validation_warn_id_glare_detected">Glare detected</string>
<string name="onboard_sdk_validation_warn_passport_too_dark">Too dark</string>
<string name="onboard_sdk_validation_warn_passport_out_of_focus">Passport out of focus</string>
<string name="onboard_sdk_validation_warn_passport_glare_detected">Glare detected</string>
<string name="onboard_sdk_validation_success">All good!</string>
<string name="onboard_sdk_validation_voice_over_back_camera_started">Back camera has started</string>
<string name="onboard_sdk_validation_voice_over_warn_id_glare_detected">Glare on ID</string>
<string name="onboard_sdk_validation_voice_over_id_too_close">Move phone further from the ID</string>
<string name="onboard_sdk_validation_voice_over_id_too_far">Move phone closer to the ID</string>
<string name="onboard_sdk_validation_voice_over_autocapture_capturing">Capturing</string>
<string name="onboard_sdk_validation_voice_over_autocapture_success">Capture success</string>
<string name="onboard_sdk_validation_voice_over_enter_manual_mode">Double tap on the screen to capture, or bottom right button if you need help with capturing</string>
<string name="onboard_sdk_voice_over_shutter_button">Take photo</string>
<!-- IdValidationActivity -->
<string name="onboard_sdk_validation_show_front">Show the front of the ID</string>
<string name="onboard_sdk_validation_show_front_secondary_text">@string/onboard_sdk_validation_show_front</string>
<string name="onboard_sdk_validation_show_back">Show the back of the ID</string>
<string name="onboard_sdk_validation_show_back_secondary_text">@string/onboard_sdk_validation_show_back</string>
<string name="onboard_sdk_validation_show_passport">Show passport page with photo</string>
<string name="onboard_sdk_id_scan_help_btn">Help</string>
<string name="onboard_sdk_id_scan_help_common_issues">Common issues</string>
<string name="onboard_sdk_id_scan_help_common_issue_1">ID too far or out of frame</string>
<string name="onboard_sdk_id_scan_help_common_issue_subtext_1"></string>
<string name="onboard_sdk_id_scan_help_common_issue_2">Glare or shadows on ID</string>
<string name="onboard_sdk_id_scan_help_common_issue_subtext_2"></string>
<string name="onboard_sdk_id_scan_help_common_issue_3">Camera lens dirty</string>
<string name="onboard_sdk_id_scan_help_common_issue_subtext_3"></string>
<string name="onboard_sdk_id_scan_help_btn_ok">OK, try again</string>
<string name="onboard_sdk_id_scan_help_btn_manual_capture">I prefer to capture the photo manually</string>
<string name="onboard_sdk_document_scan_help_common_issues">Common issues</string>
<string name="onboard_sdk_document_scan_help_common_issue_1">Document is too far or out of frame</string>
<string name="onboard_sdk_document_scan_help_common_issue_subtext_1"></string>
<string name="onboard_sdk_document_scan_help_common_issue_2">Document is folded</string>
<string name="onboard_sdk_document_scan_help_common_issue_subtext_2"></string>
<string name="onboard_sdk_document_scan_help_common_issue_3">Glare or shadows on the document</string>
<string name="onboard_sdk_document_scan_help_common_issue_subtext_3"></string>
<string name="onboard_sdk_document_scan_help_common_issue_4">Camera lens is dirty</string>
<string name="onboard_sdk_document_scan_help_common_issue_subtext_4"></string>
<string name="onboard_sdk_document_scan_help_btn_ok">OK, try again</string>
<!-- ReviewActivity -->
<string name="onboard_sdk_review_your_photo">Review your photo</string>
<string name="onboard_sdk_review_your_photo_hint1">Ensure that the text on the ID is readable</string>
<string name="onboard_sdk_review_your_photo_hint2">The ID photo must be sharp and without glare</string>
<string name="onboard_sdk_review_your_photo_btn_scan_again">@string/onboard_sdk_validation_address_btn_scan_again</string>
<string name="onboard_sdk_validation_address_btn_scan_again">"< Retake photo"</string> <!-- Remove! -->
<string name="onboard_sdk_review_your_photo_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- GeolocationActivity -->
<string name="onboard_sdk_determine_location">We need to determine\nyour location</string>
<string name="onboard_sdk_current_location_label">You are currently in:</string>
<string name="onboard_sdk_location_unavailable">Location not\ndetermined</string>
<string name="onboard_sdk_btn_finish">Finish</string>
<string name="onboard_sdk_geolocation_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelfieActivity -->
<string name="onboard_sdk_face_scan_custom_message"> </string>
<string name="onboard_sdk_face_scan_manual_capture_instructions">Take photo</string>
<string name="onboard_sdk_face_scan_get_ready">Get ready…</string>
<string name="onboard_sdk_face_scan_warn_selfie_too_dark">Too dark</string>
<string name="onboard_sdk_mask_check_info">Put on your\nface mask</string>
<string name="onboard_sdk_feedback_remove_lenses">Take off your glasses</string>
<string name="onboard_sdk_feedback_face_mask_detected">Face mask detected</string>
<string name="onboard_sdk_feedback_position_your_face">Look at the camera</string>
<string name="onboard_sdk_feedback_position_your_face_for_age_estimation">Look at the camera to estimate your age</string>
<string name="onboard_sdk_feedback_face_tilted">Don’t tilt your head</string>
<string name="onboard_sdk_feedback_face_rotated_left">Turn right</string>
<string name="onboard_sdk_feedback_face_rotated_right">Turn left</string>
<string name="onboard_sdk_feedback_align_face">Align your face within the white silhouette</string>
<string name="onboard_sdk_feedback_blurred_crop">Too blurry.\nClean the camera and hold still.</string>
<string name="onboard_sdk_feedback_face_too_far">Move closer</string>
<string name="onboard_sdk_feedback_face_too_close">Move away</string>
<string name="onboard_sdk_feedback_taking_photo">Don’t move!\nTaking photo…</string>
<string name="onboard_sdk_processing">Processing…</string>
<string name="onboard_sdk_spoof_detected">Poor conditions for selfie. Try in another place.</string>
<string name="onboard_sdk_voice_over_feedback_camera_activated">Front camera activated</string>
<string name="onboard_sdk_voice_over_feedback_blurred_crop">Image not focused, adjust</string>
<string name="onboard_sdk_voice_over_feedback_face_too_close">Move phone further, please.</string>
<string name="onboard_sdk_voice_over_feedback_face_too_far">Move phone closer to you, please.</string>
<string name="onboard_sdk_voice_over_feedback_open_eyes">Keep your eyes open</string>
<string name="onboard_sdk_voice_over_feedback_remove_lenses">Take off your glasses</string>
<string name="onboard_sdk_voice_over_feedback_face_mask_detected">Take off your face mask</string>
<string name="onboard_sdk_voice_over_feedback_face_tilted">Don’t tilt your head</string>
<string name="onboard_sdk_voice_over_feedback_face_rotated_left">Turn right a bit</string>
<string name="onboard_sdk_voice_over_feedback_face_rotated_right">Turn left a bit</string>
<string name="onboard_sdk_voice_over_feedback_align_face">Hold phone in front of your face</string>
<string name="onboard_sdk_voice_over_feedback_multiple_faces_detected">@string/onboard_sdk_feedback_multiple_faces_detected</string>
<string name="onboard_sdk_voice_over_feedback_face_scan_not_operational">@string/onboard_sdk_face_scan_not_operational</string>
<string name="onboard_sdk_voice_over_feedback_too_dark">@string/onboard_sdk_validation_warn_id_too_dark</string>
<string name="onboard_sdk_voice_over_feedback_get_ready">Hold still…</string>
<string name="onboard_sdk_voice_over_face_scan_enter_manual_mode">Double tap anywhere on the screen to capture</string>
<!-- SignatureFormActivity -->
<string name="onboard_sdk_signature_title">Digital signature</string>
<string name="onboard_sdk_signature_description">Please sign in the box below to create your digital signature for signing the document.</string>
<string name="onboard_sdk_signature_sign_here">Sign here</string>
<string name="onboard_sdk_signature_btn_clear_canvas">Clear canvas</string>
<string name="onboard_sdk_signature_btn_done">Done</string>
<!-- VideoSelfieActivity -->
<string name="onboard_sdk_video_selfie_feedback_selfie">Look at the camera</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_processing">Processing…</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_success">Looking good!</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_spoof_detected">Poor conditions for selfie, try in another place</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_lenses_detected">Glasses detected</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_mask_detected">Mask detected</string>
<string name="onboard_sdk_video_selfie_feedback_selfie_error_continue">Continuing the flow. Please wait…</string>
<string name="onboard_sdk_video_selfie_feedback_voice_consent">Say\n“%1$s”\nout loud</string>
<string name="onboard_sdk_video_selfie_recording_btn_continue">@string/onboard_sdk_btn_continue</string>
<string name="onboard_sdk_video_selfie_default_question_1">Say your full name out loud</string>
<string name="onboard_sdk_video_selfie_default_question_2">Say your address out loud</string>
<string name="onboard_sdk_video_selfie_default_question_3">Say your gender out loud</string>
<string name="onboard_sdk_video_selfie_default_answer_1"></string>
<string name="onboard_sdk_video_selfie_default_answer_2"></string>
<string name="onboard_sdk_video_selfie_default_answer_3"></string>
<string name="onboard_sdk_video_selfie_default_consent">I accept the terms & conditions</string>
<string name="onboard_sdk_vs_switch_to_back_camera">Switching to back camera…</string>
<string name="onboard_sdk_vs_switch_to_front_camera">Switching to front camera…</string>
<string name="onboard_sdk_vs_improving_resolution">Improving resolution…</string>
<string name="onboard_sdk_vs_custom_message"> </string>
<string name="onboard_sdk_video_selfie_feedback_selfie_no_match">No match. Try again.</string>
<string name="onboard_sdk_video_selfie_feedback_id_processing">Processing…</string>
<string name="onboard_sdk_video_selfie_feedback_id_scan_failed">ID scan failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_final_feedback_id_scan_failed">ID scan failed</string>
<string name="onboard_sdk_video_selfie_feedback_id_type_match_failed">ID type mismatch. Please show the same ID.</string>
<string name="onboard_sdk_video_selfie_final_feedback_id_type_match_failed">ID type mismatch</string>
<string name="onboard_sdk_video_selfie_feedback_id_photo_verification_failed">ID photo verification failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_feedback_final_id_photo_verification_failed">ID photo verification failed</string>
<string name="onboard_sdk_video_selfie_feedback_id_name_verification_failed">Name verification failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_feedback_final_id_name_verification_failed">Name verification failed</string>
<string name="onboard_sdk_video_selfie_feedback_passport_scan_failed">Scan failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_final_feedback_passport_scan_failed">Scan failed</string>
<string name="onboard_sdk_video_selfie_feedback_passport_type_match_failed">ID type mismatch. Please show the same ID.</string>
<string name="onboard_sdk_video_selfie_final_feedback_passport_type_match_failed">ID type mismatch</string>
<string name="onboard_sdk_video_selfie_feedback_passport_photo_verification_failed">Passport photo verification failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_final_feedback_passport_photo_verification_failed">Passport photo verification failed</string>
<string name="onboard_sdk_video_selfie_feedback_passport_name_verification_failed">Name verification failed. Please try again.</string>
<string name="onboard_sdk_video_selfie_final_feedback_passport_name_verification_failed">Name verification failed</string>
<string name="onboard_sdk_video_selfie_question_error_title">Something went wrong</string>
<string name="onboard_sdk_video_selfie_question_error_suggestion_1">Be sure to be in a place\nwith less ambient noise</string>
<string name="onboard_sdk_video_selfie_question_error_suggestion_2">Preferably use the\nmicrophone of your\nheadphones</string>
<string name="onboard_sdk_video_selfie_question_error_suggestion_3">Be very clear with the\npronunciation</string>
<string name="onboard_sdk_speech_to_text_btn_try_again">Try Again</string>
<string name="onboard_sdk_video_selfie_uploading">Uploading video…</string>
<string name="onboard_sdk_video_selfie_upload_success">Video Successfully Uploaded</string>
<string name="onboard_sdk_video_selfie_upload_failed">Processing failed…</string>
<string name="onboard_sdk_video_selfie_upload_failed_subtitle">Something went wrong processing your video selfie. Please try again.</string>
<string name="onboard_sdk_video_selfie_upload_processing_retry">Retry</string>
<string name="onboard_sdk_video_selfie_feedback_no_network">No internet connection</string>
<string name="onboard_sdk_video_selfie_allow_screen_recording_title">For legal reasons, we need you to</string>
<string name="onboard_sdk_video_selfie_allow_screen_recording_subtitle">\“Allow screen recording\“ and \“Allow Microphone\”</string>
<string name="onboard_sdk_video_selfie_allow_screen_recording_subtitle_highlight">and</string>
<string name="onboard_sdk_video_selfie_start">Start video selfie</string>
<string name="onboard_sdk_video_selfie_press_to_continue">Once said, press to continue</string>
<string name="onboard_sdk_video_selfie_tap_to_answer">Tap to answer</string>
<string name="onboard_sdk_video_selfie_tap_when_done">Tap when done</string>
<string name="onboard_sdk_video_selfie_tap_to_speak">Tap to speak</string>
<string name="onboard_sdk_video_selfie_answer_out_loud">Please answer out loud</string>
<string name="onboard_sdk_video_selfie_say_out_loud">Please say out loud</string>
<string name="onboard_sdk_video_selfie_voice_consent_success">All good!</string>
<string name="onboard_sdk_video_selfie_upload_modules_partially_complete">Not all modules have been completed…</string>
<string name="onboard_sdk_video_selfie_upload_processing">Kindly hold on and refrain from closing this, as it may take some time to finish…</string>
<string name="onboard_sdk_video_selfie_switch_to_back_camera">Switching to back camera</string>
<string name="onboard_sdk_video_selfie_switch_to_front_camera">Switching to front camera</string>
<string name="onboard_sdk_video_selfie_improving_resolution">Improving resolution</string>
<string name="onboard_sdk_video_selfie_voice_consent_dialog_title">Finished speaking?</string>
<string name="onboard_sdk_video_selfie_voice_consent_dialog_description">Did you say \"%1$s?\" If you haven’t, please try again.</string>
<string name="onboard_sdk_video_selfie_center_face_in_frame">Center face in frame to continue</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_title">Microphone permissions are legally required to continue</string>
<string name="onboard_sdk_video_selfie_allow_permissions">Allow permissions</string>
<string name="onboard_sdk_video_selfie_btn_quit_process">Quit process</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_title">@string/onboard_sdk_video_selfie_allow_permissions</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_subtitle">To continue with the onboarding process, we will need you to enable:</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_list_title">Microphone permission</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_item_1">Open settings</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_item_2">Tap on Apps & Notifications or Apps</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_item_3">Tap on the name of this app</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_item_4">Select App Permissions or Permission Manager</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_instructions_item_5">Toggle the switch</string>
<string name="onboard_sdk_video_selfie_allow_audio_permissions_mandatory_dialog_disclaimer">Remember, the specific steps might vary based on your device and the version of the operating system it’s running.</string>
<string name="onboard_sdk_video_selfie_face_match_fail">Faces do not match</string>
<!-- VideoSelfieChecksActivity -->
<string name="onboard_sdk_video_selfie_check_recording_permission">Give recording permission</string>
<string name="onboard_sdk_video_selfie_check_front_id_scan">Scan the front of ID</string>
<string name="onboard_sdk_video_selfie_check_back_id_scan">Scan the back of ID</string>
<string name="onboard_sdk_video_selfie_check_selfie_scan">Look at your front camera</string>
<string name="onboard_sdk_video_selfie_check_random_questions">Answer some questions out loud</string>
<string name="onboard_sdk_video_selfie_check_voice_consent">Speak the words displayed on the screen</string>
<string name="onboard_sdk_video_selfie" translatable="false">Video selfie</string>
<string name="onboard_sdk_video_selfie_checks_description">For legal reasons, we must recheck your documents. You’ll be requested to:</string>
<!-- VoiceConsentDialog -->
<string name="onboard_sdk_voice_consent_dialog_button_done">Yes, I’m done</string>
<string name="onboard_sdk_voice_consent_dialog_button_try_again">Try again</string>
<!-- ExitDialog -->
<string name="onboard_sdk_exit_dialog_title">Are you sure you want to quit?</string>
<string name="onboard_sdk_exit_dialog_message">This will quit the process and all the progress will be lost.</string>
<string name="onboard_sdk_exit_dialog_positive_button">Quit</string>
<string name="onboard_sdk_exit_dialog_negative_button">Get back</string>
<!-- Edit OCR screen -->
<string name="onboard_sdk_edit_ocr_title">Please check your data</string>
<string name="onboard_sdk_edit_ocr_document">Document number</string>
<string name="onboard_sdk_edit_ocr_expiry_date">Expiry Date</string>
<string name="onboard_sdk_edit_ocr_date_of_birth">Date of Birth</string>
<!-- NFC Symbol Confirmation screen -->
<string name="onboard_sdk_epassport_filter_title">Is this symbol visible on your passport cover?</string>
<string name="onboard_sdk_eid_filter_title">Is this symbol visible on the front or back of your ID?</string>
<!-- No NFC Hardware screen -->
<string name="onboard_sdk_no_nfc_hardware_title">We’re sorry, you’re unable to continue the process on this phone</string>
<string name="onboard_sdk_no_nfc_hardware_instruction">Your phone doesn’t have the ability to scan the chip in the document. Please try again using a different phone.</string>
<!-- NFC Scanning screen -->
<string name="onboard_sdk_scan_passport_title_start">Let’s scan the passport chip</string>
<string name="onboard_sdk_scan_passport_title_no_worries">No worries, let’s try again</string>
<string name="onboard_sdk_scan_passport_title_not_working">If that didn’t work…</string>
<string name="onboard_sdk_scan_passport_title_still_not_working">If that still didn’t work…</string>
<string name="onboard_sdk_scan_passport_instruction_start">Hold your phone close to the front cover.</string>
<string name="onboard_sdk_scan_passport_instruction_start_front_text_to_highlight">front cover</string>
<string name="onboard_sdk_scan_passport_instruction_front">Remove your passport from any folder or cover and hold your phone close to the front cover of your passport.</string>
<string name="onboard_sdk_scan_passport_instruction_try">Try holding your phone close to the %1$s of your passport. If nothing happens, try slowly moving your phone across the page.</string>
<string name="onboard_sdk_scan_passport_instruction_first_text_to_highlight">first page</string>
<string name="onboard_sdk_scan_passport_instruction_photo_text_to_highlight">photo page</string>
<string name="onboard_sdk_scan_passport_instruction_back_text_to_highlight">inner back page</string>
<string name="onboard_sdk_scan_id_title_start">Read the chip on the ID</string>
<string name="onboard_sdk_scan_id_instruction_first">1. Hold the ID against the phone’s center back.</string>
<string name="onboard_sdk_scan_id_instruction_second">2. Make sure your ID and phone are touching.</string>
<string name="onboard_sdk_scan_id_instruction_third">3. Hold still until scanning is complete.</string>
<string name="onboard_sdk_scan_id_instruction_first_text_to_highlight">phone’s center back</string>
<string name="onboard_sdk_scan_id_instruction_second_text_to_highlight">are touching</string>
<string name="onboard_sdk_scan_id_instruction_third_text_to_highlight">Hold still</string>
<string name="onboard_sdk_btn_start_scan">Start scanning</string>
<string name="onboard_sdk_dialog_nfc_access_mandatory_title">Incode Welcome needs\nNFC access to work</string>
<string name="onboard_sdk_dialog_nfc_access_mandatory_subtitle">Please open Settings and enable NFC</string>
<!-- Scanning Bottom Sheet -->
<string name="onboard_sdk_scan_bottom_sheet_title_ready">Ready to scan</string>
<string name="onboard_sdk_scan_bottom_sheet_title_scanning">Scanning, hold still…</string>
<string name="onboard_sdk_scan_bottom_sheet_instruction_ready">Once you see a change on the screen, keep the phone steady</string>
<string name="onboard_sdk_scan_bottom_sheet_instruction_scanning">Scanning, don’t move your phone</string>
<string name="onboard_sdk_scan_bottom_sheet_instruction_scanned">Scan successful</string>
<string name="onboard_sdk_scan_bottom_sheet_instruction_uploading">Uploading, please wait…</string>
<string name="onboard_sdk_scan_bottom_sheet_instruction_failed">We couldn’t scan the chip</string>
<!-- Don't Move Dialog -->
<string name="onboard_sdk_dont_move_dialog_title">Keep your phone and document still</string>
<string name="onboard_sdk_dont_move_dialog_instruction">Make sure you don’t move while scanning is in progress.</string>
<!-- Common NFC Scanning issues Screen -->
<string name="onboard_sdk_nfc_scan_help_common_issues">Common issues</string>
<string name="onboard_sdk_nfc_scan_help_common_issue_1">Passport is covered</string>
<string name="onboard_sdk_nfc_scan_help_common_issue_2">Phone is far away from the document</string>
<string name="onboard_sdk_nfc_scan_help_common_issue_3">Chip is on another page in the passport</string>
<string name="onboard_sdk_nfc_scan_help_common_issue_4">Moving the phone while scanning has initiated</string>
<string name="onboard_sdk_nfc_scan_help_common_issue_5">Phone cover interferes with the scan</string>
<string name="onboard_sdk_nfc_btn_ok_try_again">OK, try again</string>
<!-- NFC Scan results Screen -->
<string name="onboard_sdk_document_nfc_scan_result_success">Document chip scan succeeded</string>
<string name="onboard_sdk_document_nfc_scan_result_failure">Unable to authenticate document chip</string>
<!-- OTHER STRINGS -->
<string name="onboard_sdk_success">Success</string>
<string name="onboard_sdk_try_again">Try again</string>
<string name="onboard_sdk_error_retry">Try again</string>
<string name="onboard_sdk_no_internet_connection">Please check your Internet connection and try again</string>
<string name="onboard_sdk_unknown_server_error">Oops… something went wrong. Please try later.</string>
<!-- OTP -->
<string name="onboard_sdk_generic_otp_veryfing">Verifying…</string>
<string name="onboard_sdk_generic_otp_incorrect_code">Incorrect code. Please try again.</string>
<string name="onboard_sdk_generic_otp_try_again_in_x_seconds">Didn’t receive the code? Try again in %d seconds</string>
<string name="onboard_sdk_generic_otp_try_again">Try again</string>
<!-- SMS OTP -->
<string name="onboard_sdk_sms_otp_title">Verify your phone number</string>
<string name="onboard_sdk_sms_otp_subtitle">Please enter the code we’ve sent via SMS</string>
<string name="onboard_sdk_sms_otp_try_again_or_change_number">Didn’t receive the code? Try again or Change phone number</string>
<string name="onboard_sdk_sms_otp_try_again">Try again</string>
<string name="onboard_sdk_sms_otp_change_phone_number">Change phone number</string>
<!-- EMAIL OTP -->
<string name="onboard_sdk_email_otp_title">Verify your email address</string>
<string name="onboard_sdk_email_otp_subtitle">Please enter the code we’ve sent via email</string>
<string name="onboard_sdk_email_otp_try_again_or_change_email">Didn’t receive the code? Try again or Change email</string>
<string name="onboard_sdk_email_otp_try_again">Try again</string>
<string name="onboard_sdk_email_otp_change_email">Change email</string>
<!-- MachineLearningConsentActivity -->
<string name="onboard_sdk_ml_consent_title" translatable="false">Machine Learning Consent</string>
<string name="onboard_sdk_ml_consent_checkbox">I confirm that I have read and accept (optional)</string>
<!-- ConferenceConnectionActivity -->
<string name="onboard_sdk_conference_hang_on">Hang on</string>
<string name="onboard_sdk_conference_hang_on_subtitle">We’re connecting you with a representative</string>
<string name="onboard_sdk_conference_average_waiting_time_msg">This usually takes 2 – 3 minutes.</string>
<string name="onboard_sdk_conference_interviewer_name">Thomas Keys</string>
<string name="onboard_sdk_conference_interviewer_connected">connected</string>
<!-- TutorialQRScanActivity -->
<string name="onboard_sdk_qr_tip_title">Locate the QR code inside the document</string>
<string name="onboard_sdk_qr_tip_subtitle">QR code will be read automatically</string>
<string name="onboard_sdk_qr_tip_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- QRScanActivity -->
<string name="onboard_sdk_qr_scan_feedback_top">Place the QR code\ninside the box</string>
<string name="onboard_sdk_qr_scan_help_btn">Help</string>
<string name="onboard_sdk_qr_scan_help_common_issues">Common issues</string>
<string name="onboard_sdk_qr_scan_help_common_issue_1">QR cropped out of frame</string>
<string name="onboard_sdk_qr_scan_help_common_issue_2">QR too close or too far</string>
<string name="onboard_sdk_qr_scan_help_common_issue_3">Bad capture angle</string>
<string name="onboard_sdk_qr_scan_help_common_issue_4">Blurred or damaged QR</string>
<string name="onboard_sdk_qr_scan_help_btn_ok">OK, try again</string>
<string name="onboard_sdk_qr_scan_processing">Processing…</string>
<string name="onboard_sdk_qr_scan_success">Done!</string>
<string name="onboard_sdk_qr_scan_failed">QR scan\nunsuccessful!</string>
<!-- IdValidationFeedback -->
<string name="onboard_sdk_validation_on_server_in_progress">Processing…</string>
<string name="onboard_sdk_validation_front_id_validated">ID front validated!</string>
<string name="onboard_sdk_validation_back_id_validated">All done!</string>
<string name="onboard_sdk_validation_passport_validated">All done!</string>
<string name="onboard_sdk_validation_glare_detected">Glare present</string>
<string name="onboard_sdk_validation_glare_detected_hint">Tilt the ID slightly up or down to minimize the reflection</string>
<string name="onboard_sdk_validation_sharpness_failed">Blur present</string>
<string name="onboard_sdk_validation_sharpness_failed_hint">Move ID further away or closer to your phone until the image is focused</string>
<string name="onboard_sdk_validation_passport_sharpness_failed">Blur present</string>
<string name="onboard_sdk_validation_passport_sharpness_failed_hint">Move passport further away or closer to your phone until the image is focused</string>
<string name="onboard_sdk_validation_wrong_side_id">Wrong ID side captured</string>
<string name="onboard_sdk_validation_wrong_side_front_id_hint">Please capture the front side of the ID</string>
<string name="onboard_sdk_validation_wrong_side_back_id_hint">Please capture the back side of the ID</string>
<string name="onboard_sdk_validation_shadow_failed">Shadow detected</string>
<string name="onboard_sdk_validation_classification_failed">ID scan failed</string>
<string name="onboard_sdk_validation_passport_classification_failed">Passport scan failed</string>
<string name="onboard_sdk_validation_front_id_scan_failure">Front ID scan fail</string>
<string name="onboard_sdk_validation_back_id_scan_failure">Back ID scan fail</string>
<string name="onboard_sdk_validation_passport_scan_failure">Passport scan fail</string>
<string name="onboard_sdk_validation_front_id_scan_success">Front ID scan success</string>
<string name="onboard_sdk_validation_back_id_scan_success">Back ID scan success</string>
<string name="onboard_sdk_validation_front_id_no_face">No face found in ID</string>
<string name="onboard_sdk_validation_id_type_unacceptable">ID type is not accepted</string>
<string name="onboard_sdk_validation_id_type_unacceptable_hint">Please try with a different document</string>
<string name="onboard_sdk_validation_btn_try_again">Try Again</string>
<plurals name="onboard_sdk_validation_attempts_remaining">
<item formatted="true" quantity="one">%d attempt remaining</item>
<item formatted="true" quantity="other">%d attempts remaining</item>
</plurals>
<string name="onboard_sdk_validation_btn_retake_photo">Retake Photo</string>
<string name="onboard_sdk_validation_btn_use_another_id">Use another ID</string>
<string name="onboard_sdk_validation_capture_failed_title">Couldn’t capture</string>
<string name="onboard_sdk_validation_validation_referred_title">Referred to an executive</string>
<string name="onboard_sdk_validation_validation_referred_subtitle">We will notify you with the result</string>
<string name="onboard_sdk_validation_no_document_detected_title">No document detected</string>
<!-- IdValidationActivity -->
<string name="onboard_sdk_id_scan_failed_common_issues">Common issues</string>
<string name="onboard_sdk_id_scan_failed_common_issue_1">Shadows or\nglare present</string>
<string name="onboard_sdk_id_scan_failed_common_issue_2">Photo\nis blurred</string>
<string name="onboard_sdk_id_scan_failed_common_issue_3">Info is\nnot readable</string>
<string name="onboard_sdk_id_scan_help_glare_present_title">Glare present</string>
<string name="onboard_sdk_id_scan_help_glare_present_hint">Tilt the ID slightly up or down to minimize the reflection</string>
<string name="onboard_sdk_id_scan_help_blur_present_title">Blur present</string>
<string name="onboard_sdk_id_scan_help_blur_present_hint">Move ID further away or closer to your phone until the image is focused</string>
<string name="onboard_sdk_id_scan_help_info_not_readable_title">Info is not readable</string>
<string name="onboard_sdk_id_scan_help_info_not_readable_hint">Minimize camera shake by holding your phone steady</string>
<string name="onboard_sdk_validation_referred_to_executive_btn_continue">@string/onboard_sdk_btn_continue</string>
<string name="onboard_sdk_validation_id_readability_failed">Info is not readable</string>
<string name="onboard_sdk_validation_passport_readability_failed">Info is not readable</string>
<string name="onboard_sdk_validation_id_readability_failed_hint">Minimize camera shake by holding your phone steady</string>
<string name="onboard_sdk_validation_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- ProcessIdActivity -->
<string name="onboard_sdk_process_id_loading_title">Hold on a sec…</string>
<string name="onboard_sdk_process_id_loading_subtitle">We’re verifying your identity</string>
<!-- IdInfoActivity -->
<string name="onboard_sdk_id_info_retake">Retake</string>
<string name="onboard_sdk_id_info_title">Please check your data</string>
<string name="onboard_sdk_id_info_full_name">Full name</string>
<string name="onboard_sdk_id_info_date_of_birth">Date of birth</string>
<string name="onboard_sdk_id_info_sex">Sex</string>
<string name="onboard_sdk_id_info_address">Address</string>
<string name="onboard_sdk_id_info_male">Male</string>
<string name="onboard_sdk_id_info_female">Female</string>
<string name="onboard_sdk_id_info_document_number">Document number</string>
<string name="onboard_sdk_id_info_expiry_date">Expiry date</string>
<string name="onboard_sdk_id_info_error_message">An error occurred while submitting OCR data.</string>
<!-- TaxId Validation -->
<string name="onboard_sdk_tax_id">Tax ID</string>
<string name="onboard_sdk_enter_tax_id">Enter your Tax ID</string>
<string name="onboard_sdk_tax_id_validation_in_progress">Validating your Tax ID</string>
<string name="onboard_sdk_tax_id_verified">Tax ID verified!</string>
<string name="onboard_sdk_tax_id_not_verified">Tax ID not verified!</string>
<!-- CURP Validation -->
<string name="onboard_sdk_confirm_curp">Confirm your CURP</string>
<string name="onboard_sdk_confirm_curp_btn_confirm">Confirm</string>
<string name="onboard_sdk_enter_curp">Enter your CURP</string>
<string name="onboard_sdk_curp">CURP</string>
<string name="onboard_sdk_curp_not_valid">CURP not valid</string>
<string name="onboard_sdk_no_curp">I don’t have my CURP.</string>
<string name="onboard_sdk_btn_generate_curp">Generate</string>
<string name="onboard_sdk_curp_validation_in_progress">Validating your CURP</string>
<string name="onboard_sdk_curp_verified">CURP verified!</string>
<string name="onboard_sdk_curp_not_verified">CURP not verified!</string>
<string name="onboard_sdk_curp_generating_in_progress">Generating your CURP</string>
<string name="onboard_sdk_curp_generating_failure_title">Couldn’t generate your CURP</string>
<string name="onboard_sdk_curp_generating_failure_subtitle">Please check your data</string>
<string name="onboard_sdk_curp_generate_title">Generate your CURP</string>
<string name="onboard_sdk_curp_first_name">Name</string>
<string name="onboard_sdk_curp_first_last_name">Last name</string>
<string name="onboard_sdk_curp_second_last_name">Second last name</string>
<string name="onboard_sdk_curp_gender">Gender</string>
<string name="onboard_sdk_curp_birth_date">Birthdate</string>
<string name="onboard_sdk_curp_state">Birth state</string>
<string name="onboard_sdk_btn_generate">Generate</string>
<string name="onboard_sdk_curp_btn_continue">@string/onboard_sdk_btn_continue</string>
<!-- SelfieActivity -->
<string name="onboard_sdk_spoof_confidence">Spoof confidence: %1$s</string>
<string name="onboard_sdk_blurriness">Blurriness: %1$s</string>
<string name="onboard_sdk_brightness">Brightness: %1$s</string>
<string name="onboard_sdk_enroll_success">Success</string>
<string name="onboard_sdk_login_success">Success</string>
<string name="onboard_sdk_login_failed">Access denied</string>
<string name="onboard_sdk_mask_check_success">Success</string>
<string name="onboard_sdk_mask_check_failed">Face mask not detected</string>
<string name="onboard_sdk_selfie_uploading">Uploading…</string>
<string name="onboard_sdk_selfie_verifying">Verifying…</string>
<string name="onboard_sdk_face_scan_error_4010">Make sure you are the only one in the frame</string>
<string name="onboard_sdk_face_scan_error_4019">Position your face in the center of the frame</string>
<string name="onboard_sdk_face_scan_error_1003">Position your face in the center of the frame</string>
<string name="onboard_sdk_face_scan_error_3004">Position your face in the center of the frame</string>
<string name="onboard_sdk_face_scan_error_3005">Move closer so your face fits the frame</string>
<string name="onboard_sdk_face_scan_error_3006">Photo blurry. Clean the lens and hold still.</string>
<string name="onboard_sdk_face_scan_error_3007">Too dark. Try moving elsewhere.</string>
<string name="onboard_sdk_face_scan_error_3008">Something went wrong. Please try later.</string>
<string name="onboard_sdk_face_scan_error_3009">Something went wrong. Please try later.</string>
<string name="onboard_sdk_face_scan_error_3010">Couldn’t capture. Try moving elsewhere.</string>
<string name="onboard_sdk_face_scan_no_network">No internet connection</string>
<!-- FaceMatchActivity -->
<string name="onboard_sdk_recognition_result_title">Verifying photo\nbased identity</string>
<string name="onboard_sdk_recognition_result_id">ID</string>
<string name="onboard_sdk_recognition_result_nfc">NFC</string>
<string name="onboard_sdk_recognition_result_selfie">Selfie</string>
<string name="onboard_sdk_recognition_result_success">Matched</string>
<string name="onboard_sdk_recognition_result_fail">Couldn’t match\nyou to the ID</string>
<string name="onboard_sdk_recognition_result_fail_id">@string/onboard_sdk_recognition_result_fail</string>
<string name="onboard_sdk_recognition_result_fail_nfc">Faces do not match</string>
<string name="onboard_sdk_recognition_result_liveness_success">Liveness success</string>
<string name="onboard_sdk_recognition_result_liveness_failed">Liveness failed</string>
<string name="onboard_sdk_recognition_result_user_already_exists">User already exists</string>
<!-- ApproveActivity -->
<string name="onboard_sdk_approve_success">Identity confirmed!</string>
<string name="onboard_sdk_approve_fail">Your identity couldn’t be confirmed</string>
<!-- GovernmentValidationActivity -->
<string name="onboard_sdk_ine_validation_in_progress">Connecting to government check…</string>
<string name="onboard_sdk_ine_validation_async">Identity submitted for verification</string>
<string name="onboard_sdk_ine_validation_success">Identity verified!</string>
<string name="onboard_sdk_ine_validation_failure">Identity not\nverified</string>
<string name="onboard_sdk_ine_validation_connection_error">Government check connection error</string>
<string name="onboard_sdk_ine_validation_ine_infrastructure_error">Government check infrastructure error</string>
<string name="onboard_sdk_ine_validation_module_not_supported_error">Module not supported error</string>
<string name="onboard_sdk_ine_validation_missing_document_identifier_error">Missing document identifier</string>
<string name="onboard_sdk_ine_validation_missing_selfie_error">Missing selfie</string>
<string name="onboard_sdk_ine_validation_user_not_found_error">User not found</string>
<string name="onboard_sdk_ine_validation_user_not_in_database">User not in government check DB</string>
<string name="onboard_sdk_ine_validation_insufficient_lookup_data">Insufficient lookup data</string>
<!-- CaptchaActivity -->
<string name="onboard_sdk_btn_submit">Submit</string>
<string name="onboard_sdk_captcha_incorect_code">Incorrect code. Please try again.</string>
<string name="onboard_sdk_captcha_general_error">Something went wrong. Please try again.</string>
<string name="onboard_sdk_captcha_title">Please enter the\n following code</string>
<plurals name="onboard_sdk_captcha_x_seconds_left">
<item formatted="true" quantity="one">%d second left</item>
<item formatted="true" quantity="other">%d seconds left</item>
</plurals>
<string name="onboard_sdk_captcha_generating_code">Generating new code…</string>
<!-- VideoConferenceActivity -->
<string name="onboard_sdk_conference_chat_send">Send</string>
<string name="onboard_sdk_chat_hint">Write a message</string>
<string name="onboard_sdk_chat_with">Chat with %1$s</string>
<!-- CustomWatchlistActivity -->
<string name="onboard_sdk_custom_watchlist_uploading_information">Uploading information…</string>
<string name="onboard_sdk_custom_watchlist_result_success">Success</string>
<string name="onboard_sdk_custom_watchlist_result_fail">Could not process information</string>
<!-- GlobalWatchlistActivity -->
<string name="onboard_sdk_global_watchlist_title">Fill out your credentials</string>
<string name="onboard_sdk_global_watchlist_process_result_description">This might take a while. Please keep the app opened…</string>
<string name="onboard_sdk_global_watchlist_something_went_wrong">Something went wrong</string>
<string name="onboard_sdk_global_watchlist_hint_nationality">Select</string>
<string name="onboard_sdk_global_watchlist_name_form_hint">First Name</string>
<string name="onboard_sdk_global_watchlist_name_form_title">First Name</string>
<string name="onboard_sdk_global_watchlist_name_form_error_message">First name is required</string>
<string name="onboard_sdk_global_watchlist_last_name_form_hint">Last Name</string>
<string name="onboard_sdk_global_watchlist_last_name_form_title">Last Name</string>
<string name="onboard_sdk_global_watchlist_last_name_form_error_message">Last name is required</string>
<string name="onboard_sdk_global_watchlist_country_form_title">Country</string>
<string name="onboard_sdk_global_watchlist_country_form_error_message">Country is required</string>
<string name="onboard_sdk_global_watchlist_dob_form_hint" translatable="false">DD / MM / YYYY</string>
<string name="onboard_sdk_global_watchlist_dob_form_title">Date of Birth</string>
<string name="onboard_sdk_global_watchlist_dob_form_error_message">Date of Birth required</string>
<!-- eKYB -->
<string name="onboard_sdk_ekyb_title">Fill out your business credentials</string>
<string name="onboard_sdk_ekyb_business">Business name</string>
<string name="onboard_sdk_ekyb_error_name_mandatory">Business name cannot be empty</string>
<string name="onboard_sdk_ekyb_house_number">House Number</string>
<string name="onboard_sdk_ekyb_house_number_form_error_message">House number is required</string>
<string name="onboard_sdk_ekyb_street">Street</string>
<string name="onboard_sdk_ekyb_business_address_2">Address 2 (optional)</string>
<string name="onboard_sdk_ekyb_country">Country</string>
<string name="onboard_sdk_ekyb_city">City</string>
<string name="onboard_sdk_ekyb_state">State</string>
<string name="onboard_sdk_ekyb_zipcode">Postal code</string>
<string name="onboard_sdk_ekyb_tax_id">Tax ID number</string>
<string name="onboard_sdk_ekyb_business_failure">Business not verified…</string>
<string name="onboard_sdk_ekyb_btn_confirm">Confirm</string>
<!-- EKYCActivity -->
<string name="onboard_sdk_ekyc_country_us_string">United States</string>
<string name="onboard_sdk_ekyc_country_us_key" translatable="false">US</string>
<string name="onboard_sdk_ekyc_country_br_string">Brazil</string>
<string name="onboard_sdk_ekyc_nationality_brazilian_string">BRAZILIAN</string>
<string name="onboard_sdk_ekyc_nationality_naturalized_brazilian_string">NATURALIZED BRAZILIAN</string>
<string name="onboard_sdk_ekyc_nationality_foreigner_string">FOREIGNER</string>
<string name="onboard_sdk_ekyc_nationality_foreigner_key" translatable="false">foreigner</string>
<string name="onboard_sdk_ekyc_nationality_brazilian_born_abroad_string">BRAZILIAN BORN ABROAD</string>
<string name="onboard_sdk_ekyc_country_form_title">Country</string>
<string name="onboard_sdk_ekyc_country_form_error_message">Country is required</string>
<string name="onboard_sdk_ekyc_name_form_hint">Name</string>
<string name="onboard_sdk_ekyc_name_form_title">First Name</string>
<string name="onboard_sdk_ekyc_name_form_error_message">First name is required</string>
<string name="onboard_sdk_ekyc_last_name_form_hint">Last Name</string>
<string name="onboard_sdk_ekyc_last_name_form_title">Last Name</string>
<string name="onboard_sdk_ekyc_last_name_form_error_message">Last name is required</string>
<string name="onboard_sdk_ekyc_house_number_form_title">House Number</string>
<string name="onboard_sdk_ekyc_house_number_form_hint">House Number</string>
<string name="onboard_sdk_ekyc_house_number_form_error_message">House number is required</string>
<string name="onboard_sdk_ekyc_street_form_hint">Street</string>
<string name="onboard_sdk_ekyc_street_form_title">Street</string>
<string name="onboard_sdk_ekyc_street_form_error_message">Street is required</string>
<string name="onboard_sdk_ekyc_street_house_number_missing_message">House number is required</string>
<string name="onboard_sdk_ekyc_postal_form_title">Postal code</string>
<string name="onboard_sdk_ekyc_postal_form_error_message">Postal code is required</string>
<string name="onboard_sdk_ekyc_postal_format_not_valid_message_us">Please enter a 5 or 9 digit Postal Code</string>
<string name="onboard_sdk_ekyc_postal_format_not_valid_message_br">Please enter a 5 or 8 digit Postal Code</string>
<string name="onboard_sdk_ekyc_state_form_hint">Any State</string>
<string name="onboard_sdk_ekyc_state_form_title">State</string>
<string name="onboard_sdk_ekyc_state_form_error_message">State is required</string>
<string name="onboard_sdk_ekyc_city_form_hint">Any City</string>
<string name="onboard_sdk_ekyc_city_form_title">City</string>
<string name="onboard_sdk_ekyc_city_form_error_message">City is required</string>
<string name="onboard_sdk_ekyc_email_form_hint" translatable="false">[email protected]</string>
<string name="onboard_sdk_ekyc_email_form_title">Email</string>
<string name="onboard_sdk_ekyc_email_form_error_message">Email is required</string>
<string name="onboard_sdk_ekyc_email_format_not_valid_message">Invalid email format</string>
<string name="onboard_sdk_ekyc_phone_form_title">Phone Number</string>
<string name="onboard_sdk_ekyc_phone_form_error_message">Phone is required</string>
<string name="onboard_sdk_ekyc_phone_format_not_valid_message">Invalid phone format</string>
<string name="onboard_sdk_ekyc_tax_id_form_us_title">SSN</string>
<string name="onboard_sdk_ekyc_tax_id_form_br_title">CPF</string>
<string name="onboard_sdk_ekyc_tax_id_form_us_error_message">SSN is required</string>
<string name="onboard_sdk_ekyc_tax_id_form_br_error_message">CPF is required</string>
<string name="onboard_sdk_ekyc_tax_id_format_not_valid_message_us">Please enter a valid number</string>
<string name="onboard_sdk_ekyc_dob_form_hint" translatable="false">DD / MM / YYYY</string>
<string name="onboard_sdk_ekyc_dob_form_title">Date of Birth</string>
<string name="onboard_sdk_ekyc_dob_form_error_message">Date of Birth required</string>
<string name="onboard_sdk_ekyc_nationality_form_error_message">Nationality is required</string>
<string name="onboard_sdk_ekyc_nationality_form_title">Nationality</string>
<string name="onboard_sdk_ekyc_main_title">Fill out your credentials</string>
<string name="onboard_sdk_ekyc_invalid_text_error_message">This value seems invalid. Please recheck it.</string>
<string name="onboard_sdk_ekyc_loading_message">Verifying…</string>
<string name="onboard_sdk_ekyc_success_message">Verified!</string>
<string name="onboard_sdk_ekyc_fail_message">Person not verified…</string>
<string name="onboard_sdk_ekyc_btn_confirm">Confirm</string>
<!-- ActivityResults -->
<string name="onboard_sdk_error_token_expired">The access token has expired</string>
<string name="onboard_sdk_results_yes">Yes</string>
<string name="onboard_sdk_results_no">No</string>
<string name="onboard_sdk_results_fetching_in_progress">Fetching results…</string>
<string name="onboard_sdk_results_fragment_title_id_verification">ID Verification</string>
<string name="onboard_sdk_results_fragment_title_liveness_check">Liveness Check</string>
<string name="onboard_sdk_results_fragment_title_facial_recognition">Facial Recognition</string>
<string name="onboard_sdk_results_fragment_title_government_validation">Government + Incode Check</string>
<string name="onboard_sdk_results_needs_review">NEEDS REVIEW</string>
<string name="onboard_sdk_id_verification_manual_check_needed">Manual check needed</string>
<string name="onboard_sdk_section_title_photo_security_and_quality">Photo security & quality</string>
<string name="onboard_sdk_section_title_id_specific">ID specific</string>
<string name="onboard_sdk_facial_recognition_label_selfie">Selfie</string>
<string name="onboard_sdk_facial_recognition_label_id">ID Scan</string>
<string name="onboard_sdk_facial_recognition_match">It’s a match!</string>
<string name="onboard_sdk_facial_recognition_mismatch">No match</string>
<string name="onboard_sdk_government_label_selfie">Incode Selfie</string>
<string name="onboard_sdk_government_label_ine">Government Check Data</string>
<string name="onboard_sdk_government_face_match">It’s a match!</string>
<string name="onboard_sdk_government_face_mismatch">No match</string>
<string name="onboard_sdk_section_title_ocr_validation">OCR Validation</string>
<string name="onboard_sdk_choose_provider">Choose provider:</string>
<string name="onboard_sdk_provider_incode">Incode</string>
<string name="onboard_sdk_provider_nom151" translatable="false">NOM-151</string>
<!-- UserConsentActivity -->
<string name="onboard_sdk_user_consent_title">Consent for Biometric Processing</string>
<string name="onboard_sdk_user_consent_description"><![CDATA[
I consent to the capture, collection, enrollment, use, retention, processing, and disclosure of a scan of my face geometry (i.e. faceprint) and information derived from the barcode of the identification card I provide as follows:<br>
<br>
- **Purpose:** verifying my identity pursuant to Incode’s [Privacy Policy](https://incode.com/privacy-policy/)<br>
<br>
- **Data Collected:** facial geometry/faceprint/image; data contained in/obtained by scanning the barcode of a government-issued identification card provided by me (including, e.g., name, address, DOB, license type, sex, height, weight, eye color, ID number)<br>
<br>
- **Retention Period:** earliest of: (i) so long as necessary for identity verification purposes; or (ii) stated [Data Retention Period](https://incode.com/privacy-policy/#data-retention) (e.g. IL (3 yrs following last engagement), TX (1 yr following exhaustion of purpose)).
]]>
</string>
<string name="onboard_sdk_btn_reports">Reports</string>
<string name="onboard_sdk_user_consent_btn_finish">I agree</string>
<string name="onboard_sdk_btn_cancel">Cancel</string>
<string name="onboard_sdk_user_consent_checkbox">I have read and agree to Incode`s [Privacy Policy](https://incode.com/privacy-policy/) and Incode`s [Terms of Use](https://incode.com/terms-of-use/).</string>
<string name="onboard_sdk_user_consent_cancel_dialog_title">User consent is mandatory</string>
<string name="onboard_sdk_user_consent_cancel_dialog_message">Are you sure you want to quit the process?</string>
<string name="onboard_sdk_user_consent_cancel_dialog_button_positive">Quit</string>
<string name="onboard_sdk_user_consent_cancel_dialog_button_negative">Continue</string>
<string name="onboard_sdk_report_not_available">Sorry, report is not available at the moment.</string>
<string name="onboard_sdk_show_report_app_unavailable">Sorry, there is no PDF viewer app installed on this device. Please install it first.</string>
<string name="onboard_sdk_qr_scan_not_operational">QR scan not ready. Please update Google Play Services.</string>
<string name="onboard_sdk_face_scan_not_operational">Face scan not ready. Please update Google Play Services.</string>
<string name="onboard_sdk_feedback_open_eyes">Keep your eyes open</string>
<string name="onboard_sdk_feedback_multiple_faces_detected">Make sure you are the only person in the frame</string>
<string-array name="onboard_sdk_id_results_mode_array">
<item>Accurate</item>
<item>Fast</item>
</string-array>
<string name="onboard_sdk_property_tamperCheck">Tamper Check</string>
<string name="onboard_sdk_property_postitCheck">Postit Check</string>
<string name="onboard_sdk_property_alignment">Alignment</string>
<string name="onboard_sdk_property_fakeCheck">Fake Check</string>
<string name="onboard_sdk_property_idLiveness">ID Liveness</string>
<string name="onboard_sdk_property_screenIdLiveness">Screen Id Liveness</string>
<string name="onboard_sdk_property_paperIdLiveness">Paper Id Liveness</string>
<string name="onboard_sdk_property_readabilityCheck">Readability Check</string>
<string name="onboard_sdk_property_balancedLightFront">Balanced light (front side)</string>
<string name="onboard_sdk_property_balancedLightBack">Balanced light (back side)</string>
<string name="onboard_sdk_property_sharpnessFront">Sharpness (front side)</string>
<string name="onboard_sdk_property_sharpnessBack">Sharpness (back side)</string>
<string name="onboard_sdk_property_incodeTamperCheck">Incode TamperCheck</string>
<string name="onboard_sdk_property_incodeFakeCheck">Incode FakeCheck</string>
<string name="onboard_sdk_property_incodeCrossCheck">Incode CrossCheck</string>
<string name="onboard_sdk_property_incodeIdLiveness">Incode ID Liveness</string>
<string name="onboard_sdk_property_qrCheck">QR check</string>
<string name="onboard_sdk_property_issueDateCheck">Issue Date Check</string>
<string name="onboard_sdk_property_documentIdCheck">Document ID Check</string>
<string name="onboard_sdk_property_2DBarcodeRead">2D Barcode Read</string>
<string name="onboard_sdk_property_birthDateCheckDigit">Birth Date Check Digit</string>
<string name="onboard_sdk_property_birthDateCrosscheck">Birth Date Crosscheck</string>
<string name="onboard_sdk_property_birthDateValidity">Birth Date Valid</string>
<string name="onboard_sdk_property_underageCheck">Underage Check</string>
<string name="onboard_sdk_property_compositeCheckDigit">Composite Check Digit</string>
<string name="onboard_sdk_property_documentClassification">Document Classification</string>
<string name="onboard_sdk_property_documentCrosscheckAggregation">Document Crosscheck Aggregation</string>
<string name="onboard_sdk_property_documentExpired">Document Expired</string>
<string name="onboard_sdk_property_documentNumberCheckDigit">Document Number Check Digit</string>
<string name="onboard_sdk_property_documentNumberCrosscheck">Document Number Crosscheck</string>
<string name="onboard_sdk_property_documentTypeSideCrosscheck">Document Type Side Crosscheck</string>
<string name="onboard_sdk_property_expirationDateCheckDigit">Expiration Date Check Digit</string>
<string name="onboard_sdk_property_expirationDateCrosscheck">Expiration Date Crosscheck</string>
<string name="onboard_sdk_property_expirationDateValidity">Expiration Date Valid</string>
<string name="onboard_sdk_property_documentSeriesExpired">Document Series Expired</string>
<string name="onboard_sdk_property_fullNameCrosscheck">Full Name Crosscheck</string>
<string name="onboard_sdk_property_imageTamperingCheck">Image Tampering Check</string>
<string name="onboard_sdk_property_issueDateValidity">Issue Date Valid</string>
<string name="onboard_sdk_property_issuingStateValidity">Issuing State Valid</string>
<string name="onboard_sdk_property_qrScan">QR Scan</string>
<string name="onboard_sdk_property_photoPrinting">Photo Printing</string>
<string name="onboard_sdk_property_personalNumberCrosscheck">Personal Number Crosscheck</string>
<string name="onboard_sdk_property_sexCrosscheck">Sex Crosscheck</string>
<string name="onboard_sdk_property_visibleColorResponse">Visible Color Response</string>
<string name="onboard_sdk_property_visiblePattern">Visible Pattern</string>
<string name="onboard_sdk_property_visiblePhotoFeatures">Visible Photo Features</string>
<string name="onboard_sdk_property_emissionNumberCrosscheck">Emission Number Crosscheck</string>
<string name="onboard_sdk_property_liveness_score">Liveness Score</string>
<string name="onboard_sdk_property_photo_quality">Photo Quality</string>
<string name="onboard_sdk_property_user_already_in_database">User already in database</string>
<string name="onboard_sdk_property_photo_comparison">Photo Comparison</string>
<string name="onboard_sdk_property_issueDate">Issue Date Valid</string>
<string name="onboard_sdk_property_firstName">First Name Valid</string>
<string name="onboard_sdk_property_maternalLastName">Maternal Last Name Valid</string>
<string name="onboard_sdk_property_paternalLastName">Paternal Last Name Valid</string>
<string name="onboard_sdk_property_ocr">OCR Valid</string>
<string name="onboard_sdk_property_personalId">Personal Id Valid</string>
<string name="onboard_sdk_property_electorsKey">Electors Key Valid</string>
<string name="onboard_sdk_property_emissionNumber">Emission Number Valid</string>
<string name="onboard_sdk_property_registrationDate">Registration Date Valid</string>
<string name="onboard_sdk_results_btn_done">Done</string>
<!-- NoNetworkSnackbar -->
<string name="onboard_sdk_no_network_snackbar_content_text">No internet connection</string>
<string name="onboard_sdk_no_network_snackbar_action_text">Retry</string>
<string name="onboard_sdk_no_network_snackbar_warning_icon_content_description">warning icon</string>
<!-- Delayed Onboarding -->
<string name="onboard_sdk_you_are_offline">You’re offline</string>
<string name="onboard_sdk_offline_onboarding_description">If you do the onboarding offline, you’ll have to sync the data when you restore connectivity.</string>
<string name="onboard_sdk_no_connection">No connection</string>
<!-- AntifraudActivity -->
<string name="onboard_sdk_antifraud_process">Processing…</string>
<!-- BiometricConsentActivity -->
<string name="onboard_sdk_bio_consent_default_title">Request for biometric processing</string>
<string name="onboard_sdk_bio_consent_desc">Your verification is powered by Incode. To comply with state regulations, we need your consent for biometric processing.</string>
<string name="onboard_sdk_bio_consent_default_text">I consent to Incode’s collection, use, retention, and disclosure of my biometric information (i.e. faceprint) and information derived from scanning the barcode of my identification card to verify my identity, and to Incode’s Privacy Policy.\nIncode permanently deletes biometric information by the earlier of (i) the time at which the purpose for which it was collected has been satisfied or (ii) three years after my last interaction with Incode.</string>
<!-- Kiosk Login -->
<string name="onboard_sdk_kiosk_login_feedback_position_your_face">@string/onboard_sdk_feedback_position_your_face</string>
<string name="onboard_sdk_kiosk_login_feedback_face_tilted">@string/onboard_sdk_feedback_face_tilted</string>
<string name="onboard_sdk_kiosk_login_feedback_face_rotated_left">@string/onboard_sdk_feedback_face_rotated_left</string>
<string name="onboard_sdk_kiosk_login_feedback_face_rotated_right">@string/onboard_sdk_feedback_face_rotated_right</string>
<string name="onboard_sdk_kiosk_login_feedback_remove_lenses">@string/onboard_sdk_feedback_remove_lenses</string>
<string name="onboard_sdk_kiosk_login_feedback_user_not_found">You’re not enrolled</string>
<string name="onboard_sdk_kiosk_login_lid_uploading">@string/onboard_sdk_selfie_uploading</string>
<string name="onboard_sdk_kiosk_login_lid_done">Done!</string>
<!-- AESActivity -->
<string name="onboard_sdk_aes_title">Confirm your signature</string>
<string name="onboard_sdk_aes_documents_list_title">The following documents will be signed:</string>
<string name="onboard_sdk_aes_documents_list_item_title">Contract %d</string>
<string name="onboard_sdk_aes_documents_list_item_view_doc">View doc</string>
<string name="onboard_sdk_aes_checkbox_terms_and_condtions">I accept the terms and conditions of the Trust Center</string>
<string name="onboard_sdk_aes_checkbox_generate_certificate">I wish to sign the contract electronically. Please generate the required certificate for me</string>
<string name="onboard_sdk_aes_checkbox_legal_binding">I would like to sign the displayed contract in a legally binding way by means of the ensuing signature procedures</string>
<string name="onboard_sdk_aes_btn_continue">@string/onboard_sdk_btn_continue</string>
<string name="onboard_sdk_aes_success">Success!</string>
<string name="onboard_sdk_aes_something_went_wrong">Something went wrong.</string>
<string name="onboard_sdk_aes_open_pdf_error">Please install an app that can open a PDF</string>
<string name="onboard_sdk_aes_signing_title">Document signing in progress. Please wait, this may take some time.</string>
<string name="onboard_sdk_aes_confirmed_signature_title">Confirmed signature!</string>
<string name="onboard_sdk_aes_confirmed_signature_documents_list_title">The following documents were signed:</string>
<string name="onboard_sdk_aes_btn_continue_and_finish">Continue and finish</string>
3.2 Dynamic Localization
You can programmatically override the SDK's text by using dynamic localization. Make sure you have the extensions
dependency in your corresponding build.gradle:
implementation 'com.incode.sdk:extensions:1.1.0'
Call IncodeWelcome.getInstance().setStrings()
to update the SDK's texts and labels like this:
val textToLocalize: java.util.HashMap<String, CharSequence> = HashMap()
// Use any string key from resources
textToLocalize["onboard_sdk_enter_phone_number"] = "My Label"
textToLocalize["onboard_sdk_intro_title"] = "My Title"
IncodeWelcome.getInstance().setStrings(Locale("en"), textToLocalize)
IncodeWelcome.getInstance().setStrings(new Locale("en"), new HashMap<String, String>() {
{
// Use any string key from resources
put("onboard_sdk_enter_phone_number", "My Label");
put("onboard_sdk_intro_title", "My Title");
}
});
3.3 Runtime Localization
It is possible to change the SDK language at runtime. Make sure you have the extensions
dependency in your corresponding build.gradle:
implementation 'com.incode.sdk:extensions:1.1.0'
You can set the SDK language programmatically through CommonConfig.Builder().setLocalizationLanguage()
API, like this:
val LANGUAGE_CODE_PORTUGUESE = "pt_PT"
...
IncodeWelcome.getInstance().setCommonConfig(
CommonConfig.Builder()
.setLocalizationLanguage(LANGUAGE_CODE_PORTUGUESE)
.build()
)
String LANGUAGE_CODE_PORTUGUESE = "pt_PT";
...
IncodeWelcome.getInstance().setCommonConfig(
new CommonConfig.Builder()
.setLocalizationLanguage(LANGUAGE_CODE_PORTUGUESE)
.build()
);
We support the following values for setLocalizationLanguage()
"en_US"
: English"es_ES"
: Spanish"pt_PT"
: Portuguese
4. Add a custom logo
It is possible to display a custom logo on the top of supported screens.
The default logo resource is an 1x1 px transparent image.
To display a custom logo, override the default image by adding an image resource to your res/drawable-???
folders.
The image resource needs to have the following name:
onboard_sdk_logo_top
If this logo needs to change programmatically, it can be done by changing the ThemeConfiguration
like so:
ThemeConfiguration.Builder.setLogo(@DrawableRes Int)
ThemeConfiguration.Builder.setLogo(@DrawableRes int);
Some modules also allow a custom logo to be displayed just for its screens. Supported modules are: Selfie
and VideoSelfie
.
To add a custom logo at build time, override the following image resources:
Selfie: onboard_sdk_selfie_logo_top
VideoSelfie: onboard_sdk_video_selfie_logo_top
To add a custom logo at runtime, use the following Builder
methods:
SelfieScan.Builder.setLogo(@DrawableRes Int)
VideoSelfie.Builder.setLogo(@DrawableRes Int)
SelfieScan.Builder.setLogo(@DrawableRes int);
VideoSelfie.Builder.setLogo(@DrawableRes int);
Note
If a custom logo is injected multiple ways, the precedence order is as follows for supported screens:
- A module-specific custom logo resource provided at runtime through one of the
setLogo()
methods.- A module-specific custom logo resource provided at build time.
- An override of the generic logo resource,
onboard_sdk_logo_top
, provided at runtime.- An override of the generic logo resource,
onboard_sdk_logo_top
, provided at build time.
For best results, use an image with dimensions of around 100 x 25px.
5. Add custom text instead of replacing existing text
Some modules allow custom supplemental text to be displayed near the bottom of its screens. Supported modules are: Selfie
and VideoSelfie
.
Override the following string resources to insert custom text. These can be overridden in strings.xml
or using Dynamic Localization:
Selfie: onboard_sdk_face_scan_custom_message
VideoSelfie: onboard_sdk_vs_custom_message
6. Replace videos with custom videos
The Incode Welcome SDK uses Lottie animations for videos.
If you want to provide your own videos, put the corresponding Lottie .json
files to your res/raw
directory.
onboard_sdk_lottie_tutorial_id_front.json
onboard_sdk_lottie_tutorial_id_back.json
onboard_sdk_lottie_tutorial_passport.json
onboard_sdk_lottie_tutorial_selfie.json
onboard_sdk_lottie_id_processing.json
Lottie .json
files for optional NFC dependency:
onboard_sdk_lottie_android_nfc_id_modal_animation.json
onboard_sdk_lottie_android_nfc_passport_modal_animation.json
onboard_sdk_lottie_tutorial_nfc_scan_1.json
onboard_sdk_lottie_tutorial_nfc_scan_2.json
onboard_sdk_lottie_tutorial_nfc_scan_3.json
onboard_sdk_lottie_tutorial_nfc_scan_4.json
onboard_sdk_lottie_tutorial_nfc_scan_front_cover.json
onboard_sdk_lottie_tutorial_nfc_scan_id.json
As we can see, the Incode Welcome SDK offers many different customization options. Among other things, we have gone through how we can customize buttons, colors, text, logos and themes. We hope this tutorial has been helpful and as always, please reach out to us with any questions or if you need additional assistance.
Updated 10 days ago