Mobile Guides
Abbreviations and terminology
Mobile Protector SDK
REST API scenarios

Mobile Sample App

The application provides sample code showing how to use the Thales Mobile Protector SDK in typical scenarios. These can be reused in a different mobile application.

By keeping the same configuration used by the tutorial web site, it is possible to integrate complete flows quickly based on the Thales Mobile Protector SDK.


  • Use the enrollment process from the tutorial web site.
  • Integrate the Mobile Protector SDK authentication into your banking flow.

Install sample app

Download our sample app

Coming soon.

Request a pre-compiled sample application from Thales

Thales is able to provide a compiled version of the sample application for Android and/or iOS.

For Android, an APK file will be sent that is pre-configured for your IdCloud Authentication environment. You will be able to install it manually on Android phones.

For iOS, TestFlight is used to share a version of the sample application that is pre-configured for your IdCloud Authentication environment. You will need to provide Thales with the email addresses of the people who will test the application, so that Thales can send TestFlight invitations.

Contact your sales representative for more information.

Build the app from source code

You’ll need to follow our instructions:

Details of the project classes

Features Classes
Activation of Mobile Protector SDK

Initial SDK configuration (FaceID,Secure Storage, and so on.)
[Sample App Project]/EzioMobileSampleApp/Helpers/CMain.m (iOS)

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/helpers/ (Android)
Enable additional authentication factors on top of PIN verification

Enable / disable authentication factors

Verify status of authentication factors
[Sample App Project]/EzioMobileSampleApp/GUI/TokenDetail_SettingsVC.m (iOS)

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/gui/Frag (Android)
FaceID configuration ViewControler

Check FaceID status

FaceID enrollment / un-enrollment
[Sample App Project]/EzioMobileSampleApp/GUI/GemaltoFaceIdVC.m (iOS)

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/gui/Frag (Android)
Provide sample code showing how to manage the different notifications and messages received by the application

Enrollment messages during SDK provisioning from EPS and MSM

Authentication and signature requests via Out of Band Secure Channel (MSM)

Typical error case management during messaging
[Sample App Project]/EzioMobileSampleApp/Helpers/Ezio/PushManager.m (iOS)

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/helpers/ezio/ (Android)
Generate TOTP and OCRA OTP

Support different authentication factors: PIN, fingerprints, and FaceID

Manage creation of the token, containing the OATH seed
[Sample App Project]/EzioMobileSampleApp/Helpers/Ezio/TokenDevice.m (iOS)

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/helpers/ezio/ (Android)
Manage key life-cycle events like provisioning and de-registration [Sample App Project]/EzioMobileSampleApp/Helpers/Ezio/TokenManager.m

[Sample App Project]/app/src/main/java/com/gemalto/eziomobilesampleapp/helpers/ezio/