Migrate from old mobile sdk
How to migrate to the old platform sdk (Platform 7) to the new platform (Platform X)
In the Sources Catalog, create your new Sources.
Sources > Overview > Add Source
At the last step of the Source setup, you will obtain a Source Key, required for the initialization methods of our SDK
Our SDK files have changed. You must replace the old ones. Get our latest versions :
Some names of our modules have also evolved, here are their correspondences :
TCSDK -> TCServerSide
TCPrivacy -> TCConsent
The way you initialize our SDK is now different, your old methods will not be recognized anymore.
- You don't need container ID anymore, all is on the same site ID. Instead of a container ID you'll need a specific key to define the source.
- You don't need to put any TCServerSide instance in your Consent implementation anymore.
- You might need to use the TCUser class to forward relevant information about your users.
If your mobile app use our SDK modules only for Privacy your migration is done at this point.
If you want to benefit of all the advantages of tracking with server-side destinations, or if you were using server-side v1 containers to send data to your partners, please follow the next steps!
With the old platform, you were used to send a container call, with all the variables. It's not compatible anymore. Instead, you have to send events with properties.
Here’s a code example of how to execute an event:
let event = TCPageViewEvent(type: "product list")
event?.pageName = "Best sellers"
For technical documentation about how integrating events, please visit to our GitHub: https://github.com/CommandersAct/iOSV5/tree/master/TCServerSide#executing-events https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#executing-an-event
The new platform is using standard properties, so we recommend to upgrade your mobile application’s data layer by using our standard properties as much as possible
A Quality Assurance Test & validation is strongly recommended before launch in production ! Here’s a few references to help you on this point:
- Debugging => list of methods to display logs in your app https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#debugging https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#debugging
Your migration is done !
Maybe you have some specific needs ? Don’t forget to check the following FAQ
It’s a good practice ! We strongly recommend to have the same data layer for web & mobile application Main benefit: setup only 1 destination for both sources! Your destination’s setup will be recognized by web and mobile
Our SDK doesn’t collect automatically the IDFA/AAID anymore, but we offer a simple method to track this information:
Yes it’s possible !
For further information, have a look to this part of our documentation: https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#custom-events https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#custom-events
Yes it’s possible ! If you need to send more data then just the required properties, simply use the "additional property" method, as follow:
TCPageViewEvent pageViewEvent = new TCPageViewEvent("Consent");
pageViewEvent.pageName = "Configuration";
TCPageViewEvent *pageViewEvent = [[TCPageViewEvent alloc] initWithType: @"Consent"];
pageViewEvent.pageName = @"Configuration";
[pageViewEvent addAdditionalProperty: @"currentConsent" withStringValue: @"refused"];
Yes it’s possible !
If you need to set a persistent variable, please refer to this doc: https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#persisting-variableshttps://github.com/CommandersAct/iosV5/tree/master/TCServerSide#persisting-variables
Persisting variable’s definition: it’s a key/value which will remains the same as long as the app is opened (example : Google account ID)
It’s not required ! Your current json is still valid for our new SDK
It’s not required ! Your current setup is still valid for our new SDK