Key Improvements and Changes in Android SDK v5
Android SDK v5 introduces significant improvements and additional features over v4, including:
New Features:
Form tracking to capture user input.
Ability to change the Track ID and Track Domain at runtime (useful for apps with multiple languages or accounts).
Improved Data Quality:
Requests are now stored in a database instead of app files.
Requests can be sent in batches, preserving correct page navigation paths.
Uses WorkManager for reliable request handling.
WebViews are tracked entirely within the app’s context.
Improved campaign tracking for better accuracy.
Enhanced Debugging:
Detailed logs for easier debugging and monitoring.
Performance and Battery Optimization:
Optimized performance and reduced battery usage.
Visits Tracking Behavior:
In SDK version 4, the
fnsparameter (force new session) was timer-based, restarting sessions every 30 seconds by default. However, you could adjust this interval as needed.SDK version 5 enforces stricter session rules: sessions restart only upon app restarts after being killed or after 30 minutes of inactivity enforced during post-processing.
Android SDK v5 relies on WorkManager to store and send requests, which ensures reliable data transmission with a minimum send interval of 15 minutes (maximum: 60 minutes). We recommend enabling batch support and using the client timestamp for accurate page duration calculations. Contact your account manager to enable the client timestamp in your account.
SDK v5 no longer supports configuration via Tag Integration. Configuration must now be done directly in the app as described in the documentation.
Steps for Migration
Preserving the existing customer EverID data is crucial to ensuring a smooth migration from Android SDK v4 to Android SDK v5. Failing to migrate properly can result in the creation of new users/visitors in Mapp Intelligence after app updates.
Implement SDK v5
To implement SDK v5 in your application, follow the instructions in the documentation. You can use either query-based or object-oriented tracking.Enable the Migration Function
Ensure you enable the migration function in the global configuration to preserve existing customer data:class SampleApplication : Application() { override fun onCreate() { super .onCreate() val webtrekkConfigurations = WebtrekkConfiguration.Builder(listOf( "track Id" ), "track domain" ) .enableMigration() .build() Webtrekk.getInstance().init( this , webtrekkConfigurations) } }public class SampleApplication extends Application { @Override public void onCreate() { super .onCreate(); List<String> trackIds = new ArrayList<>(); trackIds.add( "track id" ); WebtrekkConfiguration webtrekkConfiguration = new WebtrekkConfiguration.Builder(trackIds, "track domain" ) .enableMigration() .build(); Webtrekk.getInstance().init( this , webtrekkConfiguration); } }Remove SDK v4 Configuration
Remove any configuration related to Android SDK v4 from your application. This is necessary to prevent the tracking of user interactions in duplicate. Leaving both SDKs enabled could result in tracking the same interactions twice.
Key Points
Preserve customer everID data during migration to avoid creating new user profiles in Mapp Intelligence.
Enable the migration function to keep existing data intact.
Remove all SDK v4 configurations to prevent duplicate tracking.