Below is a complete list of changes for each release of the Tealium for Swift library.
Version 2.1.0 (2020)
Released: October 2020
The remote commands feature was updated with a new option to use a remote or locally hosted JSON configuration files, removing the requirement for a webview. If using the Remote Command tag option, in iQ Tag Management, the webview is required. Learn more about JSON controlled remote commands.
Lower-cased the value of the platform variable to correct mobile session timer. Previously, sessions were measured similarly to web (30 minutes of consistent activity). By lower-casing the platform variable, the Customer Data Hub recognizes the incoming data as a mobile session and the session length is shortened to 2 minutes.
Update your load rules if you have Load or Attribute Rules configured checking for case sensitive platform values such as iOS vs ios.
Low Impact Changes
Add origin: mobile to the track payload
Version 2.0.0 (2020)
Released: July 2020
New CCPA API added to the Consent Manager module. Learn more in the Consent Manager documentation.
Native Hosted Data Layer support
Automatic Deep Link tracking that will add deeplink urls, universal link urls, and query string parameters to the data layer when the user opens the app from one of these methods.
Ability to start a Trace by scanning a QR Code from the Customer Data Hub UI
Added a new TealiumLogger that uses the Apple preferred OSLog vs the print function. There is still an option to use print by setting the logType property on the TealiumConfig object. Read more about Logging.
Combined several ancillary modules into the Core library for faster and more straightforward installation. See the modules section for more information.
Updated the track() method to accept a Dispatch type of View or Event. This allows us to support one track method and provide more clarity around screen and event tracking. Read more about the updated track() method.
Support for more expiration options for data variables. See Data Management for more information.
Support for native session counting in lieu of using the session counting logic within utag.js. This provides more accurate session counts, and fixes some edge cases where background activities triggered new sessions, resulting in higher than expected session counts.
⚠️Important⚠️ If the Tag Management Module is being used as the dispatch option, you must also update the mobile.html template within the associated TiQ account/profile. If this action isn’t performed, duplicate sessions are recorded in Tealium. Learn more about how to update a template or contact your Account Manager for assistance.
High Impact Changes
Updated the API to be more in line with Swift best practices
Optimized the modules system for better performance
Optimized the individual modules for better performance
Removed multiple delegate options for API simplicity
Improved connectivity checks - NWPathMonitor now used on supported devices
Removed the CrashReporter module from the project and added to a separate repository for those that want to use it
Removed NotificationCenter in the RemoteCommands module and replaced it with the Delegate pattern
Low Impact Changes
Added more protocols and result types for testability
Updated class names for consistency with other Tealium libraries