Profile data migration

To make it easier to collect data to a Profile, Batch has added two automatic ways to migrate old installation's data on a Profile:

  • User will be automatically identified (logged-in) if he had a Batch custom_user_id set on the local storage.
  • User natives (language/region) and custom data will be automatically migrated to a Profile.

These migrations are triggered when your application on the dashboard is attached to a Project. Concretely this mean that there's two possible scenarios:

  • Your app is running on the plugin v5 or before and is already attached to a Project : migrations will be triggered on the first start running on plugin v6.
  • Your app is running on the plugin v6 but not attached to a Project: migrations will be triggered on the first start after your app is attached to a project.

These migrations are enabled by default, but you may want to disable them, to do so update your sdk configuration setup as following :

    batch.setConfig({
      iOSAPIKey:"<YOUR_IOS_APIKEY>",
      androidAPIKey:"<YOUR_ANDROID_APIKEY>",
      migrations: { 
        // Whether Batch should automatically identify logged-in user when running the SDK for the first time.
        // This mean user with a custom_user_id will be automatically attached a to a Profile and could be targeted within a Project scope.
        profileCustomIdMigrationEnabled: false,
        
        // Whether Batch should automatically attach current installation's data (language/region/customDataAttributes...)-->
        // to the User's Profile when running the SDK for the first time.
        profileCustomDataMigrationEnabled: false,
      }
    });
    batch.start();