Android SDK Migrations

ENGAGE® Android SDK Migrations

Upgrading to 4.X

Remove the Firebase-Legacy component in your codebase if you still have it. This component has been removed in this version in order to update Firebase to the latest version.

If WorkManager, automatic initialization, or androidx startup are currently being disabled solely for the sake of the ENGAGE SDK, then the following snippet can be removed from the AndroidManifest.xml file.

<!-- If you are disabling WorkManager startup only then remove the following-->
<meta-data
    android:name="androidx.work.impl.WorkManagerInitializer"
    android:value="androidx.startup"
    tools:node="remove" />
<!-- If you are disabling androidx completely, then remove the following-->
<provider
    android:name="androidx.startup.InitializationProvider"
    android:authorities="${applicationId}.androidx-startup"
    tools:node="remove">
</provider>

If you would like to continue disabling androidx startup or WorkMangager automatic initialization, then follow the steps outlined in the ENGAGE SDK WorkManager page.

Upgrading to 3.X

One of the main features of ENGAGE 3.0 is the support for devices with multiple SIMs. In ENGAGE 2.x, the registered phone number was not stored in the SDK’s database since only a single phone number could be registered. ENGAGE 3.x can register up to 3 numbers.

If upgrading from version 2.x and you already have verified a phone number in version 2.x, the following function cannot return the verified phone number since numbers were not saved in the database. This is the only instance in which this function will not return a registered number.

 EngageApp.getRegisteredPhoneNumbers(context)

If there is a phone number registered in 2.x, the list returned from the function above will include:

EngageApp.UNKNOWN_NUMBER

This string value indicates a phone number that had been registered in version 2.x but is no longer known.