Commanders Act X
Platform XDocumentationWelcome to Success
  • Welcome !
  • Platform updates
    • Announcements
    • Documentation updates
    • Release notes
  • Getting started
    • How the platform works
      • Glossary
        • Condensed platform concepts
    • Platform interface
      • Prod and Testing environments
      • Productivity tools
        • Commander's AI
    • Integrating your data
      • GTM Tutorial
      • OneTag Tutorial
      • Migration guides to the Platform X
        • Migrate from SSv1 to SSv2
          • Send data to serverside v2
            • Purchase event example (ssv1 to ssv2)
        • Migrate from old mobile sdk
  • Features
    • Sources
      • Sources Overview
      • Sources Catalog
        • Web
          • Web container
            • User guides for browser-side platform
              • Container
                • Hosting
                • Creation and modification
                • Generation
                • Testing
                • Deployment and roll back
                • Deletion
                • Statistics
                • Modification history
                • Javascript block
                • Branches
                • Plugin Commanders Act Assistant
              • Tags
                • Add tags
                • Configure tags
                • Rules
                  • Basic actions
                  • Triggers
                  • Perimeters & constraints
              • Data layer and data types
                • External variables
                • Internal variables
                • Event variables
                • Data storage
              • Deduplication
                • Setup guide
                • Setup example
                • Deduplication reports
              • TagPerformance
                • Setup guide
                • Report analysis
                • Troubleshooting
            • Setup guides for developers
              • Web container setup
              • Datalayer setup
              • Browser-side events setup
              • AMP
              • Angular
              • AngularJS
              • React
              • SPA implementation guide
              • VueJS
              • IOT & TV Apps
            • Best Practices
              • FAQ
              • Common Container Strategies
              • Common Trigger Strategies
              • Performance Optimization
              • tC.* attributes and methods
              • APIs
                • Onsite API
              • TMS & Consent banners IDs
          • Javascript SDK
            • Next.js serverside rendering
          • Pixel Tracking API
          • Google Tag Manager (GTM)
          • Shopify
        • Mobile APP
          • Android
          • iOS
          • Flutter
          • React native
        • Advertising
          • Bing Ads (cost import)
          • Facebook Ads (cost import)
          • Criteo (cost import)
          • Realytics
        • Import CRM users
          • API users
          • Users file importer
        • Import conversions
          • API Conversions and Product catalog
          • Conversions files importer
        • Product catalog
          • Product catalog files importer (FTP)
        • Server
          • HTTP tracking API source
            • (deprecated) HTTP tracking API source 1.0
          • Node.JS
          • Python
          • PHP
      • Source Live Event Inspector
      • Source data quality
    • Destinations
      • Destinations overview
        • Automatic Audience replay
      • Destinations catalog
        • AbTasty
        • Actito
        • Adform
        • Adobe
          • Adobe Analytics
          • Adobe Campaign
        • AdRoll
        • Adition
        • Adventori
        • Affilae
        • Alphalyr Marketing Studio
        • Amazon
          • Amazon Ads Conversions API
          • Amazon S3
        • Attraqt
        • Awin
        • Batch Audience
        • Branch Events
        • Button
        • Campaign Analysis Legacy
        • Commission Junction
        • Criteo
          • Criteo - Events
          • Criteo (audiences)
          • Criteo (offline conversions)
        • Data Activation Legacy
        • Dataventure
        • Destination Logs Exporter (closed beta)
        • Dialog-Mail
        • Dynamic Yield
        • Easyence
        • Effinity
        • Eloqua
        • Emarsys
        • Email export
        • Equativ Audience
        • Experian
        • Facebook
          • Facebook Conversions API
            • Facebook CAPI through GTM
            • Performance tab (Event Match Quality)
          • Facebook Custom Audiences
          • Facebook Lead Ads
        • FTP
        • Gamned
        • Google
          • Google Analytics 4
            • Google Analytics 4 - Proxy Mode
          • Google BigQuery
          • Google Conversion Adjustments
          • Google Customer Match
          • Google Display & Video 360
          • Google Enhanced Conversions
          • Google Enhanced Conversions for Leads
          • Google Floodlight Mobile App Conversion
          • Google Search Ads 360 Enhanced Conversions
          • Google Store Sales Direct
        • IBM
        • Inxmail
        • IntelliAd
        • Jellyfish
        • Kameleoon
          • Kameleoon Audience
          • Kameleoon Events
        • Kelkoo
        • Kwanko
        • LinkedIn Conversions API
        • Liveramp
        • Magento
        • Marin Software
        • Mapp
        • Matomo
        • MediaMath
        • Microsoft Advertising Universal Event Tracking
        • Mindlytix
        • Moebel
        • Nextdoor Conversion API
        • OXID
        • Optimizely
        • Outbrain
        • Partnerize
        • Piano Analytics
          • Piano Analytics Collection API
          • Piano Analytics Enrichment API
        • Pinterest
        • Piwik PRO
        • Prediggo
        • Qlik
        • Quantcast
        • Quora Ads Conversion API
        • Rakuten
          • Rakuten Audience
          • Rakuten Events
        • Realytics
        • Reddit Conversions API
        • Responsys
        • RhythmOne
        • Rich Relevance
        • RTB House Audience
        • Salesforce
          • Salesforce Audience Studio
          • Salesforce Marketing Cloud
          • Salesforce Commerce Cloud
        • SAP Commerce Cloud
        • Selligent
        • Skai
        • Smart Adserver
        • SmartFocus
        • Snapchat Conversions API
        • Splio
        • Syte
        • Tableau Online
        • Taboola
          • Taboola Audience
          • Taboola Events
        • Target2sell
        • Temelio
        • Teradata
        • The Trade Desk
          • The Trade Desk Conversions API
          • The Trade Desk Audience
        • TikTok
          • TikTok Events API
          • TikTok Offline Events
        • TimeOne
        • Tradedoubler
        • TradeTracker
        • X (Twitter) Conversion API
        • Xandr
        • Webhook
        • Webtrends
        • ZBO Media
        • Zeta
      • Destination builder
        • Javascript destination builder
          • Tutorial - How to build a server destination with the JS sandbox
          • Serverside javascript helpers
      • Destination filters
      • Mapping and Properties transformation
      • Event delivery
      • Destination event inspector
      • Dry mode (lab)
    • Enrichments
      • Augmented User Attributes
        • Business case
      • Events enrichment
      • Storage Settings
    • Data Quality
      • Event Specification
      • Sources data quality
      • Data cleansing
        • Supported transformation functions - Data cleansing
          • Format a date
    • Identity resolution
      • Migrate from Fuse v1 to Fuse v2
    • Customers
      • Segment
        • Segment overlap
        • Segment stats
    • Explore
      • Campaign analysis
        • Attribution
        • Control Group (Closed Beta )
      • User analysis
        • Dashboards
      • Consent Analysis
    • Consent management
      • Responsability of actors
      • Setup Guides
        • Tag Manager
          • Commanders Act TMS
          • Google Tag Manager (GTM)
          • Google Tag Manager (GTM) - Consent Mode
          • Google Consent Mode in Commanders Act CMP
          • Adobe Launch
        • Websites (Hardcoded)
        • FR : Suppression des cookies lors du retrait du consentement
        • Mobile apps
          • iOS
            • ATT - App Tracking Transparency (iOS 14.5+)
          • Android
      • User Guides
        • Categories & Tags
          • Manage Categories
          • Manage Vendors
          • Assign Categories
        • Privacy Banners
          • Banner Templates
            • Accessibility Template
          • Manage Banner
          • Deploy Banner
          • Copy Banner
        • Consent Analysis
        • Exports
        • Settings
      • Extensions
        • Cookie Scanner
        • Piggybacking
        • Tag Firewall
      • Marketing Preferences Center (additional module)
      • Knowledge Base
        • Consent Object
        • Consent cookies exemption
          • Implementation guide for exempted consent statistics FR market
        • Consent Cookie
        • IAB TCF V2.2 Release details
          • IAB TCF v2.2 CMP requirements
          • IAB TCF v2.2 Migration guide Web
          • IAB TCF v2.2 Migration guide App
        • IAB TCF V2.2 Consent
        • IAB TCF V2.2 and Google FAQ
        • Google ACM requires IAB TCF
        • CCPA & Global Privacy control
      • Rest Data API
        • GET/PUT Consents / preferences
      • OnSite API
        • Getting Started
        • consent.get
        • consent.update
        • consent.revoke
        • consent.onUpdate
        • consent.onReady
        • consentBanner.show
        • consentBanner.hide
        • consentCenter.show
        • consentCenter.hide
      • Platform API
        • Get statistics
  • Use cases
    • Data activation
      • Engage new customers
        • Welcome banner for new customers
        • Real-time promotion for hesitant customers
        • Discount banner for installing the application
        • Personalized ads
        • Engage similar audience (lookalike)
      • Increase loyalty
        • Drive to favourite store
        • Increase Customer Lifetime Value with a loyalty program
        • Notification about order delay
      • Increase revenue
        • Abandoned cart
        • Products recommendations
        • Complementary product offer
      • Retain customers
        • Identify a churn risk with RFM segmentation
        • Identify customers’ preferred channel
        • Contact with the customer support
      • Advocacy
        • Incentive to share customers' experience and rating
        • Sponsorship Program
        • Social Media Hashtag
    • Website performance
    • Consent banners A/B testing
    • Customer analysis
    • Campaigns performance analysis
  • Developers
    • Tracking & Integrations
      • Tracking
        • About events
          • E-commerce/retail events
          • Web event specificity
          • Mobile App event specificity
        • Events reference
          • Common events
          • E-commerce events
          • Video events
          • Campaign Tracking events
        • Properties reference
          • Global properties
          • Video properties
          • Permanent properties
        • Data API
          • HTTP API
          • Segment API
          • User API
          • Product catalog and conversion API
      • Server IP Whitelisting
    • Config API
    • Changelogs
      • Measure.js changelog
      • Web container generator
    • Content Security Policy
  • CONFIGURE
    • Data Management
      • Events collection
      • Data retention duration
      • Data Governance
    • Administration
      • User management
      • Domain Management
        • WAF Proxy (CloudFlare,...)
        • A record
        • CNAME record
        • On-Premise Proxy
        • Cookie CAID
        • First party hosting
      • Single Sign-On
      • Two-factor authentication (2FA)
      • Copy Management
    • Cookies
      • Cookie 1st
      • Cookie sync partners
      • First domain tracking (Phoenix)
    • Disclaimer
Powered by GitBook
On this page
  • Steps to follow for migration from SDK v4 to SDK v5
  • Create your Mobile Source(s)
  • Replace SDK Modules
  • Modify initialization methods
  • Replace container calls by events
  • Upgrade your data layer
  • Create your destinations
  • Test & validation
  • FAQ
  • Should my data layer be identical for my website & my app ?
  • How can I obtain the IDFA/AAID ?
  • Can I create custom events ?
  • Can I use additional parameters ?
  • Can I add Persisting variables ?
  • Do I need to change/update my Json file ?
  • Do I need to change/update my callbacks for consent statistics ?

Was this helpful?

Edit on GitHub
Export as PDF
  1. Getting started
  2. Integrating your data
  3. Migration guides to the Platform X

Migrate from old mobile sdk

How to migrate to the old platform sdk (Platform 7) to the new platform (Platform X)

PreviousPurchase event example (ssv1 to ssv2)NextSources

Last updated 1 year ago

Was this helpful?

To track mobile app on the new platform, you can either install our new SDK ( and ) or use our .

Steps to follow for migration from SDK v4 to SDK v5

Create your Mobile Source(s)

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

Replace SDK Modules

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

Modify initialization methods

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.

There’s a code example you can check here:

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!

Replace container calls by events

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"
	serverside?.execute(event)

Upgrade your data layer

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

Create your destinations

Test & validation

A Quality Assurance Test & validation is strongly recommended before launch in production ! Here’s a few references to help you on this point:

  • Testing => tips how to test

  • Common errors list

Your migration is done !

Maybe you have some specific needs ? Don’t forget to check the following FAQ

FAQ

Should my data layer be identical for my website & my app ?

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

How can I obtain the IDFA/AAID ?

Our SDK doesn’t collect automatically the IDFA/AAID anymore, but we offer a simple method to track this information:

Can I create custom events ?

Yes it’s possible !

Can I use additional parameters ?

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";
pageViewEvent.addAdditionalProperty("currentConsent", "refused");
TCPageViewEvent *pageViewEvent = [[TCPageViewEvent alloc] initWithType: @"Consent"];
pageViewEvent.pageName = @"Configuration";
[pageViewEvent addAdditionalProperty: @"currentConsent" withStringValue: @"refused"];

Can I add Persisting variables ?

Yes it’s possible !

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)

Do I need to change/update my Json file ?

It’s not required ! Your current json is still valid for our new SDK

Do I need to change/update my callbacks for consent statistics ?

It’s not required ! Your current setup is still valid for our new SDK

Android : iOS :

You can have a look on all events code's examples For more information about events specificity, please refer to of our documentation.

For technical documentation about how integrating events, please visit to our GitHub:

You can now use our platform to and send data to your partners

Debugging => list of methods to display logs in your app

ServerSideInstance.addAdvertisingIDs()); [ServerSideInstance addAdvertisingIDs];

For further information, have a look to this part of our documentation:

If you need to set a persistent variable, please refer to this doc:

https://github.com/CommandersAct/AndroidV5#latest-available-versions
https://github.com/CommandersAct/iOSV5#latest-available-versions
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#example https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#example
here
this page
https://github.com/CommandersAct/iOSV5/tree/master/TCServerSide#executing-events
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#executing-an-event
create new destinations
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#testing
https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#testing
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#debugging
https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#debugging
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#common-errors
https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#common-errors
Android
iOS
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#custom-events
https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#custom-events
Android example:
iOS example:
https://github.com/CommandersAct/AndroidV5/tree/master/TCServerSide#persisting-variables
https://github.com/CommandersAct/iosV5/tree/master/TCServerSide#persisting-variables
Android
iOS
HTTP tracking API