Skip to content

v2.0.0

Latest

Choose a tag to compare

@ahmadmssm ahmadmssm released this 18 Aug 09:48
· 1 commit to 099462ffed9921e6db5657e4231c54e3a36dc3aa since this release

Mobile SDK v2.0.0

Mobile SDK v2.0.0 is a major release that simplifies consent-driven integrations, adds support for fetching multiple Utiq passes.

Breaking changes

  • Removed initialization completion callbacks and state APIs:
    • Android: initialize(..., successCallback, errorCallback), onInitialize(...), and isInitialized()
    • iOS: callback-based initialize(...), didInitializeWithResult(...), and isInitialized()
  • Removed clearData(), acceptConsent(), isConsentAccepted(), and checkMNOEligibility() from the public API on Android and iOS.
  • iOS CocoaPods distribution is no longer supported. Use the Swift Package Manager distribution instead.

New

  • Added fetchIDs() to return the available ID graph as a list of IdConnectData records, including martechpass (mtid), adtechpass (atid), attributionpass (attrid), and TTL (ttl) values where available.
  • Retained fetchIdConnectData() (it will be removed in the future) as the single-record compatibility API. It delegates to fetchIDs() and returns the first record.
  • Added an iOS privacy manifest.

Migration notes

Before upgrading from v1.0.10:

  1. Remove calls to the APIs listed under Breaking changes.
  2. Keep SDK initialization as initialize(...) without completion callbacks, then use the fetch APIs' success and error callbacks for operational results.
  3. Use fetchIDs() when the application needs all returned identifiers; avoid using fetchIdConnectData() as it will be removed in the future.
  4. There is no need to call acceptConsent() the host application must have Utiq consent before calling fetchIDs() because doing this call implies that such consent is already in place (e.g. via the host application's CMP). If consent for Utiq is rejected, then call rejectConsent().
  5. Remove CocoaPods in favor of Swift Package Manager.