Migration Guide

A summary of moving from one version to another on the Smile Identity library


  • Consent has changed from a dialog to an activity see here for how this now works using start activity for result instead of triggering a consent


  • From 7.3.5 the SDK now requires signature instead of sec key please look here for how to generate a signature


  • Introduction of signature breaks sec_key implementation please look here for how to generate a signature


  • Removed the useIdCard method from the SIDConfig.Builder class, the SDK will now handle this internally

  • setRetryOnfailurePolicy is no longer mandatory when submitting a job� will default to 10 retries, 15 seconds apart


With the introduction of android 11 google is now enforcing scoped storage as explained here . If you have agent mode enabled and are capturing multiple jobs for later uploading and would like to migrate these jobs to scoped storage you need to make the following changes

  • Target android 10 in build.gradle by using targetSdkVersion 29

  • Add requestLegacyExternalStorage the AndroidManifest.xml so you can have access to external storage

  • Request external storage read and write permissions

On job submission, all jobs stored in external storage will be migrated to scoped storage and when the right tag is provided a job will be submitted

All jobs captured going forward will be stored in scoped storage.


  • Moved SmartCardView class from the com.smileidentity.libsmileid.core.idcapure package to com.smileidentity.libsmileid.core class

  • Added real time light and blur checks on ID card capture

  • Added custom messaging for the ID Card capture as demonstrated here

  • Added onIDCardStateChange(IDCardState idCardState) for feedback to the realtime ID card quality checks

v7.0.1 onwards

  • The SDK is now available on maven central and can be installed by following the Getting Started Guide

  • SDK now requires a Smile Config file from the partner portal available here

  • SDK now handles the urls and port configuration and introduced the environment enum SIDNetData.Environment.TEST and SIDNetData.Environment.PROD to manage your Smile ID environmen

v6.4.3 onwards Migration to the new ID Capture

Replace everything associated with

  • com.smileidentity.libsmileid.utils.CaptureIDCardOverlay

  • SurfaceView

  • �FrameLayout ( if copied .from the demo app)

Refer to New physical id capture for steps on how to implement the new ID Capture

v6.4.0 to v6.4.1 onwards

The SDK will provide validation by default and will return an error which can be either


�For more information on required fields per ID type please refer to https://docs.smileidentity.com/general/supported-id-types

You can turn off this remote validation by using

builder = new SIDConfig.Builder(this)
//this will only validate to make sure there is a country, id type and id

v 6.3.x to v 6.4.x


This change introduced sandboxed folders for Smile Identity jobs to make sure they are app specific this uses the package name of the app implementing the Smile Identity library and as such the library requires a context on multiple occasions


When getting the instance the method get instance now requires a context


CURRENT (v 6.4.x)
SIDInfosManager.getInstance(Context context)


When getting the idle tags the method now requires a context

public Set<String> getIdleTags()

//CURRENT (v 6.4.x)
public Set<String> getIdleTags(Context context)


The methods clearConfig and getConfigCache now require a context

public void clearConfig(String tag)
public SIDConfigCache getConfigCache(String tag)

//CURRENT (v 6.4.x)
public void clearConfig(String tag,Context context)
public SIDConfigCache getConfigCache(String tag,Context context)

Last updated