What's new
-
[Android Platform]
- Supports CleverTap Android SDK v5.2.1.
- Adds Custom Proxy Domain functionality for Push Impressions and Events raised from CleverTap Android SDK. Please refer to Usage.md file to read more on how to configure custom proxy domains in Android.
-
[iOS Platform]
- Supports CleverTap iOS SDK v5.2.1.
- Adds support to enable
NSFileProtectionCompleteto secure App’s document directory.
-
[Android and iOS Platform]
- Adds in-built support to send the default locale(i.e.language and country) data to the dashboard and exposed public API
CleverTapPlugin.setLocale(Locale locale)to set the custom locale, for LP Parity. - Adds support for Integration Debugger to view errors and events on the dashboard when the debugLevel is set to 3 using
CleverTapPlugin.setDebugLevel(3). - Adds support to configure first tab title in App Inbox.
- Adds in-built support to send the default locale(i.e.language and country) data to the dashboard and exposed public API
Changes
- [iOS Platform]
- Updated logic to retrieve country code using NSLocale above iOS 16 as
CTCarrieris deprecated above iOS 16 with no replacements, see Apple Doc. - Updated logic to not send carrier name above iOS 16 in CTCarrier field.
- Updated logic to retrieve country code using NSLocale above iOS 16 as
Bug Fixes
- [iOS Platform]
- Fixes a crash in iOS 17/Xcode 15 related to alert inapps.
What's new
-
[Android Platform]
- Supports CleverTap Android SDK v5.2.0.
- Note: RenderMax Push SDK functionality is now supported directly within the CleverTap Core SDK. Please remove the integrated RenderMax SDK before you upgrade to CleverTap React Native SDK for this version.
- Adds support for developer defined default notification channel. Please refer to the Usage.md file to read more on how to setup default channel in your app. Also please note that this is only supported for CleverTap core notifications. Support for push templates will be released soon.
-
[iOS Platform]
- Supports CleverTap iOS SDK v5.2.0.
-
[Android and iOS Platform]
- Adds support for encryption of PII data wiz. Email, Identity, Name and Phone. Please refer to Usage.md file to read more on how to enable/disable encryption of PII data.
- Adds support for custom KV pairs common to all inbox messages in App Inbox.
API Changes
- [Android Platform]
- Adds
SCCampaignOptOutEvent to Restricted Events Name List for internal use. - Adds custom sdk versions to
affield for internal use.
- Adds
Breaking API Changes
- [Android Platform]
- CTFlushPushImpressionsWork breaks custom WorkerFactory implementation of an App:
- If you are using custom
WorkFactoryimplementation ofWorkManagerfor Android platform then make sure that you correctly handle workers defined by CleverTap SDK and other third party dependencies. - You must return
nullfromcreateWorker()for any unknown workerClassName. Please check implementation provided in the blog here.
- If you are using custom
- CTFlushPushImpressionsWork breaks custom WorkerFactory implementation of an App:
Bug Fixes
- [Android Platform]
- Fixes #393 - push permission flow crash when context in CoreMetadata is null.
- Fixes #428 - Race-condition when detecting if an in-app message should show.
- Fixes Push primer alert dialog freeze behavior, which became unresponsive when clicked outside the window.
- Fixes a bug where addMultiValueForKey and addMultiValuesForKey were overwriting the current values of the user properties instead of appending it.
New Updates
- Supports CleverTap iOS SDK v5.1.2.
Bug Fixes
- [iOS platform]Fixed a bug where the App Inbox would appear empty.
- Bug fixes and performance improvements.
New Updates
- Supports CleverTap Android SDK v5.0.0.
- Supports CleverTap iOS SDK v5.0.1.
- Adds support for Remote Config Variables. Please refer to the Remote Config Variables doc to read more on how to integrate this to your app.
- Adds new API
dismissInbox()to dismiss the App Inbox screen. - Adds new APIs,
markReadInboxMessagesForIDs(Array)anddeleteInboxMessagesForIDs(Array)to mark read and delete an array of Inbox Messages respectively.
API Changes
Deprecated: The following methods and classes related to Product Config and Feature Flags have been marked as deprecated in this release, instead use new Remote Config Variables feature. These methods and classes will be removed in the future versions with prior notice.
-
Product config
-
Methods
setDefaultsMapfetchactivatefetchAndActivatesetMinimumFetchIntervalInSecondsresetProductConfiggetProductConfigStringgetProductConfigBooleangetNumbergetLastFetchTimeStampInMillis
-
Callbacks
CleverTap.CleverTapProductConfigDidInitializeCleverTap.CleverTapProductConfigDidFetchCleverTap.CleverTapProductConfigDidActivate
-
-
Feature flags
getFeatureFlagCleverTap.CleverTapFeatureFlagsDidUpdatecallback
Breaking Change
- Streamlines the payload for various callbacks across Android and iOS platform. Refer doc for detailed changes.
Changes
- [Android and iOS platforms]: Adds
contentPageIndexandbuttonIndexarguments to the payload sent viaCleverTap.CleverTapInboxMessageTappedlistener: ThecontentPageIndexindicates the page index of the content, which ranges from 0 to the total number of pages for carousel templates. For non-carousel templates, the value is always 0, as they only have one page of content. ThebuttonIndexrepresents the index of the App Inbox button clicked (0, 1, or 2). A value of -1 inbuttonIndexindicates the App Inbox item is clicked. - [Android Platform] Behavioral change of CleverTap.CleverTapInboxMessageTapped listener: Previously, the callback was raised when the App Inbox item is clicked. Now, it is also raised when the App Inbox button is clicked. It matches the behavior in iOS platform.
Bug Fixes
- Fixes a bug where App Inbox was not respecting the App Inbox background color when no tabs are provided.
- Fixes the non-EU retry mechanism bug.
- Fixes a bug where notification clicked callbacks were not working for killed state in iOS.
- Supports CleverTap iOS SDK v4.2.2
- Supports CleverTap Android SDK v4.7.5
- Supports CleverTap Android RenderMax SDK v1.0.3
- Supports CleverTap Android Push Templates SDK v1.0.8
- Make sure you update all three above versions for compatibility and smooth working.
- Adds below new public APIs to support CleverTap Android SDK v4.7.2 and CleverTap iOS SDK v4.2.0
isPushPermissionGranted(),promptPushPrimer(object),promptForPushPermission(boolean)
- Adds push permission callback method which returns true/false after user allow/deny the notification permission.
- Refer Push Primer doc for more details.
- Fixes a bug where notification clicked callbacks were not working for killed state in iOS.
- [Android] Make sure the maximum deployment version is Android 12.
- Supports CleverTap Android SDK v4.6.9
- Supports CleverTap iOS SDK v4.2.2
- [Breaking Change]: Renames the
itemIndexfield with thecontentPageIndexfield in the payload of theCleverTap.CleverTapInboxMessageTappedcallback. - [Parity with iOS platform]:
The
CleverTap.CleverTapInboxMessageTappedcallback now provides a different value forcontentPageIndex(ex-itemIndex) compared to before. Previously, it used to indicate the position of the clicked item within the list container of the App Inbox. However, now it indicates the page index of the content, which ranges from 0 to the total number of pages for carousel templates. For non-carousel templates, the value is always 0, as they only have one page of content. - [Type Definitions support in typescript]: Supports type definitions for the event names that are available for Javascript.
- Supports CleverTap Android SDK v4.6.8
- Supports CleverTap iOS SDK v4.2.1
- Supports CleverTap Android RenderMax SDK v1.0.3
- Supports CleverTap Push Templates SDK v1.0.5.1.
- Make sure you update all four above versions for compatibility and smooth working.
- Note: This release is being done for Android 12 targeted users.
- [Android and iOS platforms]:
Adds
itemIndexandbuttonIndexarguments to the payload sent via App Inbox Message tapped listener:CleverTap.CleverTapInboxMessageTapped. TheitemIndexcorresponds the index of the item clicked in the list whereas thebuttonIndexfor the App Inbox button clicked (0, 1, or 2). A value of -1 inbuttonIndexindicates the App Inbox item is clicked. - [Android Platform] Behavioral change of
CleverTap.CleverTapInboxMessageTappedlistener: Previously, the callback was raised when the App Inbox item is clicked. Now, it is also raised when the App Inbox button is clicked. It matches the behavior in iOS platform.
- Supports CleverTap iOS SDK v4.1.5
- Supports
setInstanceWithAccountIdmethod - Supports using specific CleverTap instance
- Supports CleverTap Android Core SDK v4.6.6 and associated enhancements
- Supports CleverTap iOS SDK v4.1.2 and associated enhancements
- Supports App Inbox Message tapped listener:
CleverTap.CleverTapInboxMessageTapped
- Supports CleverTap Android Core SDK v4.6.3 and associated enhancements
- Supports CleverTap Android Push Templates SDK v1.0.5 and associated enhancements
- Supports CleverTap Android HMS SDK v1.3.1 and associated enhancements
- Supports CleverTap Android XPS SDK v1.5.0 and associated Android 12, Region Changes and other enhancements
- Supports CleverTap Android SDK v4.6.0
- Supports CleverTap iOS SDK
v4.0.0 - Abstract out notification click callback logic for killed state in Android.
- Supports CleverTap Android SDK v4.4.0
- Supports CleverTap Android SDK
v4.3.1backing Android 12
- Adds public methods for suspending/discarding & resuming InApp Notifications
- Adds public methods to increment/decrement values set via User properties
- Deprecates
profileGetCleverTapID()andprofileGetCleverTapAttributionIdentifier() - Adds a new public method
getCleverTapID()as an alternative to above deprecated methods - Supports CleverTap iOS SDK
v3.10.0
- Supports CleverTap Android SDK
v4.2.0 - Android SDK
v4.2.0fixes NPE forrecordScreenView()in Android
- Update and Freeze CleverTap React Native Podspec to a specific version of a CleverTap iOS SDK
- Supports CleverTap iOS SDK v3.9.3
- Supports CleverTap Android SDK v4.1.1
- Removes Product Experiences (Dynamic Variables) related code
- Removed
pushGooglePlusPersonandprofileSetGraphUserAPI
- Supports CleverTap iOS SDK v3.9.1
- Supports Major release of CleverTap Android SDK v4.0.0, which will break your existing integration. Please go through Migration guide for smooth integration.
- Adds
removeListenermethod to remove single listener at a time. - Deprecated
removeListeners()method because it was removing all listeners including listeners defined in an Application issue/104. - Allow choosing text(with colour) when no messages to display in App Inbox
- Adds a callback to provide Push Notifications custom key-value pairs
- Supports CleverTap Android and iOS SDK v3.8.2
- Use v0.4.5
- Performance improvements and fixes
- Use v0.4.5
- Added support for Product Config and Feature Flags methods
- Added fix for TypeError: EventEmitter.removeListeners is not a function
- Use v0.4.5
- Added support for Xiaomi/Baidu Push methods
- Use v0.4.5
- Update to CleverTap Android SDK v3.7.2
- Use v0.4.5
- Adds support for Custom App Inbox & Native Display
- Supports CleverTap Android SDK v3.7.0
- Supports CleverTap iOS SDK v3.7.3
- Update to CleverTap Android SDK v3.6.4
- Update to CleverTap Android SDK v3.6.3
- Added method to custom handle Push Notifications in Android
- Update to CleverTap iOS SDK v 3.7.2
- Update to CleverTap Android SDK v 3.6.0
- Update to CleverTap iOS SDK v 3.7.0
- Added fixes for Typescript
- Update to CleverTap Android SDK v 3.5.1
- Update to CleverTap iOS SDK v 3.5.0
- Add support for Typescript
- Update to CleverTap iOS SDK v 3.4.2
- Added the local clevertap-react-native Podspec for integrating the React Native iOS bridge via Cocoapods.
- Update to CleverTap Android SDK v 3.4.2
- Update to CleverTap iOS SDK v 3.4.1
- Update to CleverTap Android SDK v 3.3.2
- Update to CleverTap iOS SDK v 3.3.0
- Update to CleverTap Android SDK v 3.3.1
- Update to CleverTap iOS SDK v 3.2.2
- Update to CleverTap Android SDK v 3.2.0
- Update to CleverTap iOS SDK v 3.2.0
- Fix Node 10 install.js issue
- Update to CleverTap Android SDK v 3.1.10
- Update to CleverTap Android SDK v 3.1.9
- Update to CleverTap iOS SDK v 3.1.7
- Support for Android O Notification Channels with custom sound
- New APIs for GDPR compliance
- Adds Android support for recordScreenView API
- Update to CleverTap Android SDK v 3.1.8
- Support for Android O Notification Channels
- fix react-native dependency
- fix for breaking change in RN v0.47 Android
- update iOS for RN v0.49
Update to CleverTap iOS SDK v 3.1.6
Update to CleverTapAndroidSDK v 3.1.7
(Supports CleverTap 3.1.5/3.1.6 and React Native v0.41.2)
(Supports CleverTap 3.1.4 and React Native v0.41.2)
Adds recordScreenView api for iOS
(Supports CleverTap 3.1.2 and React Native v0.41.2)
Add CleverTapSDK framework as zip + postinstall unzip, as npm doesn't like iOS framework symlinks.
(Supports CleverTap 3.1.2 and React Native v0.41.2)
Add missing header search path.
(Supports CleverTap 3.1.2 and React Native v0.41.2)
Initial release.