Skip to content

Releases: CleverTap/clevertap-cordova

4.3.0

08 Oct 11:16
70cf5ab

Choose a tag to compare

What's new

Bug Fixes

  • [Android and iOS Platform]
    • Fixes an issue where profileGetProperty didn't return null for non-existent keys

4.2.0

29 Jul 11:21
6ef8c13

Choose a tag to compare

What's new

API changes

  • [Android and iOS Platform]
    • Updates the setOptOut(userOptOut) API. This upgraded API improves GDPR opt-out functionality by allowing you to control whether critical system events (such as app installs, uninstalls, and push notification registration) are still sent to CleverTap, even when a user has opted out of tracking. This helps you respect user privacy choices while still maintaining essential app functionality and compliance with regulations. This is a non-breaking change.
      • setOptOut(userOptOut, allowSystemEvents)

Bug Fixes

  • [iOS Platform]
    • Fixes a No new templates are synced error while syncing new custom templates.
    • Fixes a Local Push Primer crash when asking for push permission using promptForPushPermission.

4.1.0

27 Jun 14:24
f80531a

Choose a tag to compare

What's new

4.0.0

14 May 11:32
a629391

Choose a tag to compare

⚠️ NOTE
Please refer to this guide for changed integration steps for Huawei PushProvider.

New Features

Android Specific

  • Supports CleverTap Android SDK v7.3.1.
  • Adds support for Android 15, making it compliant with Android 15 requirements. Details here.
  • Upgrades the algorithm used for encryption of PII data, making it compliant with OWASP. Uses AndroidKeyStore for securely backing up encryption key on API levels 23+.
  • Updates minSdkVersion to API 21 (Android 5.0).
  • Adds new API to register push tokens for providers other than FCM
    • registerPushToken(yourToken, pushType): Register the token for the specified PushType. Refer here for example usage.

Breaking API Changes

Android Specific

  • Removes: The legacy token registration APIs have been removed to make push providers injectable. The removed APIs include:
    • setPushBaiduToken()
    • setPushHuaweiToken()

3.4.0

25 Feb 10:21
69475cf

Choose a tag to compare

New Features

Android Specific

  • Supports CleverTap Android SDK v7.1.2.
  • Adds support to hide large icon in android notifications by sending wzrk_hide_large_icon key in notification payload.

iOS Specific

Common for both Android and iOS

  • Adds support for triggering InApps based on first-time event filtering in multiple triggers. Now you can create campaign triggers that combine recurring and first-time events. For example: Trigger a campaign when "Charged" occurs (every time) OR "App Launched" occurs (first time only).
  • Adds new user-level event log tracking system to store and manage user event history. New APIs include:
    • getUserEventLog(<eventName>): Get details about a specific event
    • getUserEventLogCount(<eventName>): Get count of times an event occurred
    • getUserLastVisitTs(): Get timestamp of user's last app visit
    • getUserAppLaunchCount(): Get total number of times user has launched the app
    • getUserEventLogHistory(): Get full event history for current user

API Changes

  • Deprecates: The old event tracking APIs tracked events at the device level rather than the user level, making it difficult to maintain accurate user-specific event histories, especially in multi-user scenarios. The following methods have been deprecated in favor of new user-specific event tracking APIs that provide more accurate, user-level analytics. These deprecated methods will be removed in future versions with prior notice:
    • eventGetDetail(): Use getUserEventLog() instead for user-specific event details
    • eventGetOccurrences(): Use getUserEventLogCount() instead for user-specific event counts
    • eventGetFirstTime(): Use getUserEventLog() instead for user-specific first occurrence timestamp
    • eventGetLastTime(): Use getUserEventLog() instead for user-specific last occurrence timestamp
    • sessionGetPreviousVisitTime(): Use getUserLastVisitTs() instead for user-specific last visit timestamp
    • sessionGetTotalVisits(): Use getUserAppLaunchCount() instead for user-specific app launch count
    • getEventHistory(): Use getUserEventLogHistory() instead for user-specific event history

3.3.0

03 Dec 12:27
2173865

Choose a tag to compare

New Features

Android Specific

  • Supports CleverTap Android SDK v7.0.3.
  • Removes character limit of maximum 3 lines from AppInbox messages
  • Adds support for AndroidX Media3 in lieu of the deprecation of ExoPlayer. While Clevertap continues to support ExoPlayer, migration is recommended. For migration refer here.

iOS specific

Common for both Android and iOS

  • Adds support for triggering InApps based on user attribute changes.
  • Adds support for File Type Variables in Remote Config. Please refer to the Remote Config Variables doc to read more on how to integrate this in your app.
  • Adds support for Custom Code Templates. Please refer to the CustomCodeTemplates doc to read more on how to integrate this in your app.
  • Changes campaign triggering evaluation of event names, event properties, and profile properties to ignore letter case and whitespace.
  • Adds support for previewing in-apps created through the new dashboard advanced builder.
  • Adds support for custom handshake domain configuration.

Bug Fixes

Android Specific

  • Fixes an ANR caused by extremely old InApp campaigns.
  • Fixes an issue where incorrect callbacks were sent for InApps when the phone was rotated.
  • Fixes an issue where an InApp was displayed even after all the campaigns were stopped.
  • Fixes an issue where the InApp image was not shown when the phone was rotated to landscape.
  • Fixes an issue where certain URLs loaded incorrectly in custom HTML InApp templates.

3.2.0

12 Aug 12:18
3984cfa

Choose a tag to compare

New Features

Android Specific

  • Supports CleverTap Android SDK v6.2.1.
  • Supports Android 14, made it compliant with Android 14 requirements. Details here.
  • Extends the push primer callback to notify permission denial when cancel button is clicked on PromptForSettings alert dialog.
  • Adds Accessibility ids for UI components of SDK.
  • Migrates JobScheduler to WorkManager for Pull Notifications.

Bug Fixes

Android Specific

  • Fixes #239, an issue where the onPushNotification callback was not triggered when notification was tapped from the killed state on capacitor apps.
  • Fixes InApps crash in a rare activity destroyed race condition.
  • Fixes Potential ANR in a race condition of SDK initialisation in multithreaded setup.
  • Fixes a bug in Client Side InApps with regards to frequency limits.
  • Fixes a crash due to NullPointerException related to deviceInfo.deviceId.
  • Fixes an ANR related to isMainProcess check.
  • Fixes an ANR due to eager initialisation of CtApi triggered by DeviceId generation.

Breaking API Changes

  • Removes all Xiaomi related public methods as the Xiaomi SDK has been discontinued. Details here.

3.1.0

27 Apr 11:17
0743ce0

Choose a tag to compare

Version 3.1.0 (April 27, 2024)

New Features

iOS specific

Bug Fixes

iOS specific

  • Fixes crash due to out of bounds in NSLocale implementation.
  • Fixes a bug where client side in-apps were not discarded when rendering status is set to "discard".

3.0.0

17 Apr 09:00
8bf23df

Choose a tag to compare

New Features

Android specific

iOS specific

Common for both android and iOS

  • Adds new public APIs, fetchInApps and clearInAppResources to support client-side in-apps.

Bug Fixes

Android specific

  • Fixes no empty message for app inbox without tabs
  • Removes onClickListener for Image of Cover InApp

iOS specific

  • Fixes a bug where some in-apps were not being dismissed

2.7.2

05 Dec 07:25
250df52

Choose a tag to compare

Android specific

iOS specific

  • Supports CleverTap iOS SDK v5.2.2. This supported version includes support for Custom Proxy Domain functionality. Check usage for cordova ios here.

Bug Fixes

  • Fixes a crash in iOS 17/Xcode 15 related to alert inapps.

Common for both android and iOS

  • Adds new public API setLocale(String locale) for in-built support to send the custom locale(i.e.language and country) data to the dashboard.
  • Adds support for Integration Debugger to view errors and events on the dashboard when the debugLevel is set to 3.