All notable changes to this project will be documented in this file. The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
ClixNotification.trackPushNotificationTapped(data)public API for manually tracking push notification taps- Enables push tap tracking for apps using third-party notification libraries (e.g., expo-notifications) where
getInitialNotification()returns null
- Enables push tap tracking for apps using third-party notification libraries (e.g., expo-notifications) where
reset()method to clear all local SDK state including device ID
removeUserId()— usereset()instead
- Added
sourceTypefield to event tracking for SDK-internal events (SESSION_START, PUSH_NOTIFICATION_RECEIVED, PUSH_NOTIFICATION_TAPPED)
- Session tracking with automatic SESSION_START lifecycle events
- iOS Live Activity support with push-to-start token management
- Native
ClixLiveActivity.setup()API for registering ActivityAttributes types - Automatic push-to-start token capture and server synchronization
- Native
- Added
Clix.Notification.onBackgroundEventAPI to handle background notification events, allowing users to register custom handlers alongside the SDK's internal handler.
- Reordered Android background event logging and push display to ensure notifications appear in affected environments.
- Aligned the React Native SDK structure with other platforms.
- Updated the userAgent format.
- Fixed notification payload parsing, now attach userJourney context.
- Removed unused Android push notification actions.
- Added the
trackEventmethod - Added the
Clix.Notificationfacade that exposes permission requests, token retrieval, foreground/background handlers, and notification-open callbacks. - Improved Notification Service Extension compatibility.
-
Core SDK
- ClixConfig-based initialization with projectId, apiKey, endpoint configuration
- Async/await API support
- Thread-safe operations with automatic initialization handling
-
User Management
- User identification:
setUserId(),removeUserId() - User properties:
setUserProperty(),setUserProperties(),removeUserProperty()
- User identification:
-
Push Notifications
- Firebase Cloud Messaging integration
- Notifee-based notification handling for foreground/background/cold-start and actions
- Rich notifications with images on supported platforms
- Automatic device token management
-
Device & Logging
- Device information access:
getDeviceId(),getPushToken() - Configurable logging system with 5 levels (none to debug)
- Device information access:
-
Installation
- npm/Yarn installation with peer dependencies (
@react-native-firebase/messaging,@notifee/react-native,react-native-mmkv,react-native-device-info,react-native-get-random-values,uuid) - React Native 0.60+, iOS 14.0+ and Android 5.0+ (API 21)
- Sample app with complete integration example
- npm/Yarn installation with peer dependencies (