Android SDK
Set up Evrotrust SDK
There are two options for environment:
- ENVIRONMENT_TEST
- ENVIRONMENT_PROD
Start process
EvrotrustSDK.getInstance(this).setupSDK(applicationNumber, this, EvrotrustConstants.ENVIRONMENT_TEST, this);Receive result
@Override
public void evrotrustSetupSDKResult(EvrotrustSDKSetupResult result) {
switch (result.getStatus()) {
case ERROR_INPUT:
break;
case OK:
boolean SDKSetUp = result.isSetUp();
boolean hasNewVersion = result.hasNewVersion();
boolean isInMaintenance = result.isInMaintenance();
break;
}
}Check whether the SDK is set up
Start process
boolean SDKSetUp = EvrotrustSDK.getInstance(this).isSDKSetUp(); Setup device with Evrotrust profile
The parameter EXTRA_SHOULD_SKIP_CONTACT_INFORMATION can be used to skip the screens where the user adds contact information (phone and email) to his Evrotrust account.
All the parameters starting with EXTRA_USER_INFORMATION_FOR_CHECK are optional. They are used for precheck to determinate whether the user has Evrotrust profile or not. COUNTRY_CODE is needed and used only if DATA_TYPE is IDENTIFICATION_NUMBER.
There are two parameters for country code, but only one has to be provided:
- COUNTRY_CODE2 – for 2 letter code
- COUNTRY_CODE3 – for 3 letter code
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.SETUP_PROFILE);
intent.putExtra(EvrotrustConstants.EXTRA_IS_ACTING_AS_REGISTRATION_AUTHORITY, false); // always has to be false
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92"); // optional parameter
intent.putExtra(EvrotrustConstants.EXTRA_SHOULD_SKIP_CONTACT_INFORMATION, false); // optional parameter
intent.putExtra(EvrotrustConstants.EXTRA_USER_INFORMATION_FOR_CHECK_DATA_TYPE,
EvrotrustConstants.USER_TYPE_IDENTIFICATION_NUMBER);
intent.putExtra(EvrotrustConstants.EXTRA_USER_INFORMATION_FOR_CHECK_DATA_VALUE, "7204141595");
intent.putExtra(EvrotrustConstants.EXTRA_USER_INFORMATION_FOR_CHECK_COUNTRY_CODE3, "BGR"); // country code by ISO 3166
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_SETUP_PROFILE); Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_SETUP_PROFILE) {
EvrotrustSetupProfileResult result = data.getParcelableExtra(EvrotrustConstants.SETUP_PROFILE_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_CANCELED:
break;
case OK:
if (result.isUserSetUp()) {
String securityContext = result.getSecurityContext();
String pinCode = result.getPinCode();
String personalIdentificationNumber = result.getPersonalIdentificationNumber();
String countryCode2 = result.getCountryCode2(); // 2 letter country code by ISO 3166
String countryCode3 = result.getCountryCode3(); // 3 letter country code by ISO 3166
String phone = result.getPhone();
String firstName = result.getFirstName();
String middleName = result.getMiddleName();
String lastName = result.getLastName();
String firstLatinName = result.getFirstLatinName();
String middleLatinName = result.getMiddleLatinName();
String lastLatinName = result.getLastLatinName();
boolean isIdentified = result.isIdentified();
boolean isSupervised = result.isSupervised();
boolean isReadyToSign = result.isReadyToSign();
boolean isRejected = result.isRejected();
EvrotrustConstants.IdentificationRejectReason rejectReason = result.getRejectReason();
}
break;
}
} If new profile has to be created the user will be automatically identified. The partner is acting as registration authority for Evrotrust.
The parameter EXTRA_SHOULD_SKIP_CONTACT_INFORMATION can be used to skip the screens where the user adds contact information (phone and email) to his Evrotrust account. This screens are opened only if the provided phone and email cannot be automatically added to the user account.
There are two parameters for country code, but only one has to be provided: COUNTRY_CODE2 – for 2 letter code COUNTRY_CODE3 – for 3 letter code
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.SETUP_PROFILE);
intent.putExtra(EvrotrustConstants.EXTRA_IS_ACTING_AS_REGISTRATION_AUTHORITY, true); // always has to be true
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92");
intent.putExtra(EvrotrustConstants.EXTRA_IDENTIFICATION_TRANSACTION_ID, "123456789012");
intent.putExtra(EvrotrustConstants.EXTRA_PERSONAL_IDENTIFICATION_NUMBER, "7204141595"); // required for countries that have identification number
intent.putExtra(EvrotrustConstants.EXTRA_COUNTRY_CODE3, "BGR"); // country code by ISO 3166
intent.putExtra(EvrotrustConstants.EXTRA_DOCUMENT_TYPE, EvrotrustConstants.DOCUMENT_TYPE_ID);
intent.putExtra(EvrotrustConstants.EXTRA_DOCUMENT_NUMBER, "636417733");
intent.putExtra(EvrotrustConstants.EXTRA_PHONE_NUMBER, "+359888778877");
intent.putExtra(EvrotrustConstants.EXTRA_EMAIL_ADDRESS, "[email protected]"); // optional parameter
intent.putExtra(EvrotrustConstants.EXTRA_SHOULD_SKIP_CONTACT_INFORMATION, false); // optional parameter
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_SETUP_PROFILE);Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_SETUP_PROFILE) {
EvrotrustSetupProfileResult result = data.getParcelableExtra(EvrotrustConstants.SETUP_PROFILE_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_CANCELED:
break;
case OK:
if (result.isUserSetUp()) {
String securityContext = result.getSecurityContext();
String personalIdentificationNumber = result.getPersonalIdentificationNumber();
String countryCode = result.getCountryCode2(); // 2 letter country code by ISO 3166
String countryCode = result.getCountryCode3(); // 3 letter country code by ISO 3166
String phone = result.getPhone();
String firstName = result.getFirstName();
String middleName = result.getMiddleName();
String lastName = result.getLastName();
String firstLatinName = result.getFirstLatinName();
String middleLatinName = result.getMiddleLatinName();
String lastLatinName = result.getLastLatinName();
boolean isIdentified = result.isIdentified();
boolean isSupervised = result.isSupervised();
boolean isReadyToSign = result.isReadyToSign();
boolean isRejected = result.isRejected();
EvrotrustConstants.IdentificationRejectReason rejectReason = result.getRejectReason();
}
break;
}
}Check for user status
Start process
EvrotrustSDK.getInstance(this).checkUserStatus(this, this); Receive result
@Override
public void еvrotrustCheckUserStatusResult(EvrotrustCheckUserStatusResult result) {
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case USER_NOT_SET_UP:
break;
case OK:
boolean successfulCheck = result.isSuccessfulCheck();
if (successfulCheck) {
boolean isIdentified = result.isIdentified();
boolean isSupervised = result.isSupervised();
boolean isReadyToSign = result.isReadyToSign();
boolean isRejected = result.isRejected();
boolean hasConfirmedPhone = result.hasConfirmedPhone();
boolean hasConfirmedEmail = result.hasConfirmedEmail();
EvrotrustConstants.IdentificationRejectReason rejectReason = result.getRejectReason();
}
break;
}
} Subscribe for user status changes
It is possible only if the identification or supervising of the user is in progress. The result will be sent via request /user/identification/status of the Vendor callback API.
Start process
EvrotrustSDK.getInstance(this).subscribeForUserStatusCallback(this, "https://example.com", "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92", this);Receive result
@Override
public void evrotrustSubscribeForUserStatusCallbackResult(EvrotrustSubscribeForUserStatusCallbackResult result) {
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_NOT_SET_UP:
break;
case OK:
boolean successful = result.isSuccessful();
if (successful) {
boolean isSubscribed = result.isSubscribed();
boolean isIdentified = result.isIdentified();
boolean isSupervised = result.isSupervised();
boolean isReadyToSign = result.isReadyToSign();
boolean isRejected = result.isRejected();
EvrotrustConstants.IdentificationRejectReason rejectReason = result.getRejectReason();
}
break;
}
} Edit user profile
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.EDIT_PERSONAL_DATA);
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92");
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_EDIT_PERSONAL_DATA); Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_EDIT_PERSONAL_DATA) {
EvrotrustEditPersonalDataResult result = data.getParcelableExtra(EvrotrustConstants.EDIT_PERSONAL_DATA__RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_NOT_SET_UP:
break;
case USER_CANCELED:
break;
case OK:
boolean editPersonalData = result.isEditPersonalData();
if (editPersonalData) {
boolean isIdentified = result.isIdentified();
boolean isSupervised = result.isSupervised();
boolean isReadyToSign = result.isReadyToSign();
boolean isRejected = result.isRejected();
EvrotrustConstants.IdentificationRejectReason rejectReason = result.getRejectReason();
}
break;
}
} Open group of documents
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.OPEN_GROUP_DOCUMENTS);
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92");
intent.putExtra(EvrotrustConstants.EXTRA_TRANSACTION_ID, "123456789012");
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_OPEN_GROUP_DOCUMENTS); Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_OPEN_GROUP_DOCUMENTS) {
EvrotrustOpenGroupDocumentsResult result =
data.getParcelableExtra(EvrotrustConstants.OPEN_GROUP_DOCUMENTS_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_CANCELED:
break;
case USER_NOT_SET_UP:
break;
case OK:
EvrotrustConstants.UserDecision userDecision = result.getUserDecision(); // Approved, Rejected, No Choice
break;
}
} Open single document
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.OPEN_SINGLE_DOCUMENT);
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92");
intent.putExtra(EvrotrustConstants.EXTRA_TRANSACTION_ID, "123456789012");
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_OPEN_SINGLE_DOCUMENT);Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_OPEN_SINGLE_DOCUMENT) {
EvrotrustOpenSingleDocumentResult result =
data.getParcelableExtra(EvrotrustConstants.OPEN_SINGLE_DOCUMENT_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_CANCELED:
break;
case USER_NOT_SET_UP:
break;
case OK:
EvrotrustConstants.UserDecision userDecision = result.getUserDecision(); // Approved, Rejected, No Choice
break;
}
} Check for user set up on the device
Start process
EvrotrustSDK.getInstance(this).isUserSetUp(this, this); Receive result
@Override
public void evrotrustUserSetUpResult(EvrotrustUserSetUpResult result) {
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case OK:
boolean userSetUp = result.isUserSetUp();
break;
}
} Check for user set up online
Start process
EvrotrustSDK.getInstance(this).isUserSetUpOnline(this, this);Receive result
@Override
public void evrotrustUserSetUpOnlineResult(EvrotrustUserSetUpOnlineResult result) {
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case OK:
boolean successfulCheck = result.isSuccessfulCheck();
if (successfulCheck) {
boolean userSetUp = result.isUserSetUp();
}
break;
}
} Change the security context of the user
Start process
EvrotrustSDK.getInstance(this).changeSecurityContext(securityContext, newSecurityContext, this, this);Receive result
@Override
public void evrotrustChangeSecurityContextResult(EvrotrustChangeSecurityContextResult result) {
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case USER_NOT_SET_UP:
break;
case OK:
boolean changed = result.isSecurityContextChanged();
break;
}
} Open settings screens
This method returns result only if the SDK is not set up.
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.SETTINGS);
intent.putExtra(EvrotrustConstants.EXTRA_SECURITY_CONTEXT, "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92");
startActivity(intent); Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_SETTINGS) {
EvrotrustSettingsResult result = data.getParcelableExtra(EvrotrustConstants.SETTINGS_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
}
} Identity verification process
This process verifies the identity of the user and returns its data like names, personal identification number, ID/Passport document number etc. Evrotrust account will not be created.
If parameter EXTRA_PERSONAL_IDENTIFICATION_NUMBER is sent, the personal identification number from the scanned document will be compared to it.
If parameter EXTRA_DOCUMENT_TYPE is sent, the document type from the scanned document will be compared to it.
If parameter EXTRA_COUNTRY_CODE2 or EXTRA_COUNTRY_CODE3 is sent, the issuing country of the scanned document will be compared to it.
There are two parameters for country code, but only one has to be provided: COUNTRY_CODE2 – for 2 letter code COUNTRY_CODE3 – for 3 letter code
Parameters EXTRA_RETURN_* specify which user data to be returned at the end of the process. If all of them are false, all data will be returned.
The user pictures and video can be requested via EXTRA_RETURN_PICTURES and received using Evrotrust Vendor API.
Start process
Intent intent = new Intent(this, EvrotrustActivity.class);
intent.putExtra(EvrotrustConstants.EXTRA_ACTIVITY_TYPE, EvrotrustConstants.ONETIME_IDENTIFICATION);
intent.putExtra(EvrotrustConstants.EXTRA_VENDOR_NUMBER, "1a2b3c4d5e6f"); // The vendor number is provided by Evrotrust
intent.putExtra(EvrotrustConstants.EXTRA_EXTERNAL_REFERENCE_ID, "abc-123-def-456"); // String parameter, provided by the vendor and returned at the end. Max length 32.
intent.putExtra(EvrotrustConstants.EXTRA_SCENARIO, EvrotrustConstants.ONETIME_SCENARIO_BASIC); // Possible values: ONETIME_SCENARIO_BASIC and ONETIME_SCENARIO_ENHANCED
intent.putExtra(EvrotrustConstants.EXTRA_URL_CALLBACK, "https://example-endpoint.com"); // It is used only for ENHANCED scenario
intent.putExtra(EvrotrustConstants.EXTRA_PERSONAL_IDENTIFICATION_NUMBER, "7204141595"); //optional
intent.putExtra(EvrotrustConstants.EXTRA_DOCUMENT_TYPE, EvrotrustConstants.DOCUMENT_TYPE_ID); //optional
intent.putExtra(EvrotrustConstants.EXTRA_COUNTRY_CODE3, "BGR"); // optional, country code by ISO 3166
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_NAMES, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_LATIN_NAMES, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_IDENTIFICATION_NUMBER, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_NUMBER, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_TYPE, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_COUNTRY, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_VALID_DATE, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_ISSUE_DATE, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DOCUMENT_ISSUER_NAME, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_DATE_OF_BIRTH, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_PLACE_OF_BIRTH, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_ADDRESS, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_NATIONALITY, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_SEX, true);
intent.putExtra(EvrotrustConstants.EXTRA_RETURN_PICTURES, true);
startActivityForResult(intent, EvrotrustConstants.REQUEST_CODE_ONETIME_IDENTIFICATION); Receive result
if (requestCode == EvrotrustConstants.REQUEST_CODE_ONETIME_IDENTIFICATION) {
EvrotrustOnetimeIdentificationResult result =
data.getParcelableExtra(EvrotrustConstants.ONETIME_IDENTIFICATION_RESULT);
switch (result.getStatus()) {
case SDK_NOT_SET_UP:
break;
case ERROR_INPUT:
break;
case OK:
String externalReferenceID = result.getExternalReferenceID();
String referenceID = result.getReferenceID();
float personPresence = result.getPersonPresence();
EvrotrustConstants.FaceScanResult liveness = result.getLiveness();
EvrotrustConstants.FaceScanResult faceMatch = result.getFaceMatch();
if (result.getOnetimeIdentificationStatus() == EvrotrustConstants.OnetimeIdentificationStatus.SUCCESS) {
String firstName = result.getFirstName();
String middleName = result.getMiddleName();
String lastName = result.getLastName();
String firstNameLatin = result.getFirstNameLatin();
String middleNameLatin = result.getMiddleNameLatin();
String lastNameLatin = result.getLastNameLatin();
String identificationNumber = result.getIdentificationNumber();
String documentNumber = result.getDocumentNumber();
EvrotrustConstants.DocumentType documentType = result.getDocumentType();
String documentCountryCode2 = result.getDocumentCountryCode2(); // 2 letter country code by ISO 3166
String documentCountryCode3 = result.getDocumentCountryCode3(); // 3 letter country code by ISO 3166
long documentValidDate = result.getDocumentValidDate();
long documentIssueDate = result.getDocumentIssueDate();
String documentIssuerName = result.getDocumentIssuerName();
long dateOfBirth = result.getDateOfBirth();
String placeOfBirth = result.getPlaceOfBirth();
String address = result.getAddress();
String district = result.getDistrict();
String municipality = result.getMunicipality();
String settlement = result.getSettlement();
String location = result.getLocation();
String buildingNumber = result.getBuildingNumber();
String entrance = result.getEntrance();
String floor = result.getFloor();
String apartment = result.getApartment();
String nationality = result.getNationality();
String nationalityCode = result.getNationalityCode();
EvrotrustConstants.SexType sex = result.getSex();
SourceUserData firstNameSource = result.getFirstNameSource();
SourceUserData middleNameSource = result.getMiddleNameSource();
SourceUserData lastNameSource = result.getLastNameSource();
SourceUserData firstNameLatinSource = result.getFirstNameLatinSource();
SourceUserData middleNameLatinSource = result.getMiddleNameLatinSource();
SourceUserData lastNameLatinSource = result.getLastNameLatinSource();
SourceUserData identificationNumberSource = result.getIdentificationNumberSource();
SourceUserData documentNumberSource = result.getDocumentNumberSource();
SourceUserData documentTypeSource = result.getDocumentTypeSource();
SourceUserData documentCountryCodeSource = result.getDocumentCountryCodeSource();
SourceUserData documentValidDateSource = result.getDocumentValidDateSource();
SourceUserData documentIssueDateSource = result.getDocumentIssueDateSource();
SourceUserData documentIssuerNameSource = result.getDocumentIssuerNameSource();
SourceUserData dateOfBirthSource = result.getDateOfBirthSource();
SourceUserData placeOfBirthSource = result.getPlaceOfBirthSource();
SourceUserData addressSource = result.getAddressSource();
SourceUserData nationalitySource = result.getNationalitySource();
SourceUserData sexSource = result.getSexSource();
} else if (result.getOnetimeIdentificationStatus() ==
EvrotrustConstants.OnetimeIdentificationStatus.UNSUCCESS) {
EvrotrustConstants.OnetimeIdentificationUnsuccessReason reason =
result.getOneIdentificationUnsuccessReason();
} else { // WAITING_SUPERVISING
// The result will be sent via request /onetimeidentification/status of the Vendor callback API.
}
break;
}
} UI customizations
Evrotrust SDK allows the developers to customize the UI by setting different colors, images and main font. Every parameter in the customization is optional and if not set the default value for that parameter will be used. The colors need to be placed in the resource file colors.xml.
- evrotrustMainColor1 is used mainly on button backgrounds and navigation bar.
- evrotrustMainColor2 is used mainly on button titles and icons.
- evrotrustMainColor3 is used mainly on title labels.
- evrotrustBackgroundColor1 is the main background color of the screens.
- evrotrustBackgroundColor2 is used for background color of EditText controls.
- evrotrustBackgroundColor3 is used for background color of the screens where there is ListView.
- evrotrustHintTextColor is used on EditText’s hint text.
- evrotrustTextColor1 is used mainly for the text color in all text fields and most of the labels.
- evrotrustTextColor2 is used for button titles and labels where the background is evrotrustMainColor1.
- The images are used in the corresponding screens. The recommended size for scanInstructionsImage is 350x273 and for the other images is 100x100. These sizes are for mdpi / 1x.
- whiteEvrotrustLogo determines the color of the Evrotrust logo. Set true for white and false for black logo.
- nightMode determines the night mode of the SDK.
- The main font of the Evrotrust SDK can be change by providing the name of the font file. This file has to be placed in the assets folder of your module.
<color name="evrotrustMainColor1">#3ecc25</color>
<color name="evrotrustMainColor2">#2552cc</color>
<color name="evrotrustMainColor3">#c6cc25</color>
<color name="evrotrustBackgroundColor1">#0F0F0F</color>
<color name="evrotrustBackgroundColor2">#232323</color>
<color name="evrotrustBackgroundColor3">#323232</color>
<color name="evrotrustTextColor1">#FFFFFF</color>.
<color name="evrotrustTextColor2">#303030</color>
<color name="evrotrustHintTextColor">#C8C8C8</color>EvrotrustCustomization customization = new EvrotrustCustomization();
customization.getImageCustomization().contactsTitleImage = R.mipmap.image_placeholder;
customization.getImageCustomization().documentsTitleImage = R.mipmap.image_placeholder;
customization.getImageCustomization().scanInstructionsImage = R.mipmap.image_placeholder;
customization.getImageCustomization().setWhiteEvrotrustLogo(true);
customization.setNightMode(EvrotrustConstants.NightMode.MODE_NIGHT_NO); // MODE_NIGHT_NO, MODE_NIGHT_YES, MODE_NIGHT_FOLLOW_SYSTEM
customization.fontName = "FontFile.ttf";
EvrotrustSDK.getInstance(this).setCustomization(customization);Change localizations
Evrotrust SDK supports the following languages – English, Bulgarian, German, Hungarian, Albanian, Macedonian, French, Italian and Romanian. Each package of the SDK comes with a folder “Localizations” in which the localization files are located. If some of the default localizations need to be changed, include them in the appropriate resource file strings.xml and then replace their value.
The preferred language of the application has to be changed in order to change the language of Evrotrust SDK. For example: AppCompatDelegate.setApplicationLocales(LocaleListCompat.forLanguageTags("en"));
Updated 2 days ago