- Added SDK Lifecycle support.
- Optimized SDK authentication flow.
- Fixes and optimizations related to App In-line and control group.
- Optimisations related to App In-line Content Property evaluation.
- Viber channel dependencies added.
- Bug fixes and optimizations around session time and device ID.
Added support for Google Families Policy restriction where advertising ID cannot be tracked for users of unknown age and children.
Optimization for App In-line campaigns rendering.
Support for Notification Inbox APIs added.
Added JWT based optional authentication security layer within the SDK.
Support added for App In-line Content on Flutter.
App In-line campaigns are now supported on recycler view.
Added MI region support for Xiaomi Push integration SDK.
Added support for Universal Control Group and Custom Control Group
Android 12 dismiss tracking.
Improvements around first acquisition source tracking.
Compatibility with Personalization SDK v1.0.0 added
Android Cordova push click optimizations
Changes with respect to Android 13 update:
- Changes in relation to collecting Advertisement ID
- Collecting Push opt-ins in run time through push permission pop-up
Improvements and optimizations around In-app Notifications
Added support for Best Channel feature
In-App Notifications improvements and optimizations
In accordance to Google's best practices, discontinued collecting Android ID
Added callbacks on new session creation
Added capabilities to style and customize push notifications
Support to configure session timeout limit
General improvements and optimizations
Fixes and improvements for Android Flutter plugin
Android 12 support added for Cordova and React plugins
- Support added for Huawei push service
- Support integration of thousands of mobile apps in a single project
Note: 'com.webengage.sdk.android.alternate_interface_id' flag that was being used for multi-app support in the same project is deprecated from this version
Support for making SDK compatible with Android 12 changes
Optimizations related to the rendering of images in push notifications.
Improvements while handling Read Phone State permission.
Support added for Xiaomi push service
Improvements around Journey data refresh
AppCrashed is configurable now
Fixes in-app height on notched devices
Adds support for the Iran Proxy Data Environment.
Adds support for the new Google Play Install Referrer Library.
Adds support for Landscape Modal In-app Views
Clears all saved SDK data on license code change.
Fixes cropped custom collapsed push notification when the target-SDK version is below 24.
Prevents redundant user-update requests if user-profile is already up-to-date.
Logs custom user attributes in the logcat when debug-mode is enabled.
Adds WhatsApp channel.
Fixes in-app shown on incorrect screen by rechecking before rendering the in-app.
Fixes formula for calculating in-app variation and control-group for users.
Adds support for in-app control-group in journeys.
Adds the SDK version as a query parameter in the amplification for Push Notification Request URL.
Fixes push notifications being shown multiple times.
Schedules amplification for push notification if not scheduled on SDK initialization.
Syncs background system events immediately with our server.
Adds Device Registered (Push), App Installed, and App Upgraded to high-priority events.
Add amplification for Push Notification.
Falls back to the US Data Center if any invalid values are added against the field, region/environment during the integration of Service Providers, Platforms, and so on.
Adds support for India Data Center.
Fixes bug which sends empty FCM push token, if the app is not found after the update.
Updates CUID in local data-storage on user login for showing CUID based in-app notifications.
Updates location of unknown users in local data-storage from user-profile for showing location-based in-app notifications to unknown users.
Fixes triggered in-app behavior by clearing session-level data on every new session.
Fixes crash due to
StackOverflowError while processing large lists on low-end devices.
Optimizes in-app performance in journeys. Now in-app notifications will be shown within 15 seconds after the user has entered the journey while the app is in the foreground.
A new session is created on every app launch after force kill, irrespective of the time interval between kill and launch.
Fixes the issue of sessions not being destroyed which caused incorrect online session time span on Xiaomi devices due to cancellation of alarms on force killing the app.
Logs event and user attributes along with event name in debug mode.
Adds callbacks to render custom push notification layouts
Fixes a bug on devices running Oxygen OS which prevented app being launched through push notification click after the app was killed or in other words, cleared/removed the app from the background.
Fixes a bug that generated a new interface ID on app update.
Adds support for multi-process apps. Apps can track users, events, screens, etc. through Android components running on different processes.
Fixes build error in Gradle versions 3.3 and below.
Adds custom push notification layouts which will be shown if key-value pair (
we_push_custom: true) is passed while creating the push campaign.
Adds logs in debug mode, which is useful for debugging.
Fixes crash when initializing WebEngage from a remote process while the app is in the background on Android Oreo and newer devices.
Fixes crash when activity is in finishing state while showing an In-app Notification.
The WebEngage Android SDK is now compatible with Android P, Google Play Services SDK version 15.0.1, and Firebase Cloud Messaging SDK version 17.3.2.
Fixes the behavior of removing push notification images from cache on config refresh while notifications were still in-tray.
NegativeArraySizeException thrown while trying to delete an empty list of cached files.
Allows dismissing carousel Push Notifications on image click by adding custom key-value pair (
we_dismiss: true) on the dashboard while creating carousel push notifications.
Fixes incomplete in-app notifications shown in some devices due to custom activity configurations.
Fixes incomplete images shown in push notifications.
Fixes WebEngage event sequencing issue on-device network fluctuation.
Fixes SDK initialization failure when the user-defined channel group name is provided on devices below Android Oreo.
Fixes forever unsynced WebEngage events when event syncing service is killed/interrupted unexpectedly.
Fixes a bug that incorrectly added users to the in-app and push message control group in some cases.
Refactors internal SDK structure.
Adds support for adaptive app icons in notifications on Oreo devices.
Fixes the issue of some images not showing up in notifications. This also adds support for corrupt images (images with some missing data which are correctly shown on browsers but do not load in apps) in notifications.
Automates SDK feature version increment which is reflected in user profiles.
Logs invalid data types while sending user or event data, and converts them to
Optimizes in-app message performance.
Reduces the number of concurrent network requests in a new user session.
Removes unnecessary network requests.
Adds options to configure automatic location tracking accuracy.
Adds manual location tracking API.
Numberin set user attribute API.
Fixes error while adding more than 5 geofences. You can now add up to 100 geofences.
Supports all Number data types for user and event attributes.
Fixes crash in Strict mode.
Caches HTTP responses as files in the data directory instead of a Blob in SQLite. This also fixes the cursor window allocation warning.
Optimizes background execution for apps targeting Android Oreo
Optimizes event reporting
Event tracking APIs now take parameters to define the event priority
Optimizes event payload size.
Fixes bug where the event
Notification Close is fired in case of exception from WebView.
Please go through our migration guide to upgrade to v3.0 of the Android SDK.
Android Oreo compatible SDK. If you are targeting your application to Android Oreo (API level 26) then this is the minimum version of WebEngage SDK that should be present in your application, else push notifications will not be displayed.
Implements default push notification channel which will display push notifications. For customizing default channel behavior and appearance visit our [push notification channels section
New Feature: Added capability to opt-out/in user from SMS and EMAIL channels. For more info visit user section.
New Feature:_ Added support for a new Push Notification layout, _Ratings.
Please go through our migration guide
New Feature: Added support for conversion tracking in in-app notifications.
loggedOutapis . Two new apis
logouthas been provided and should be used instead.
New Feature: Now tracking whether or not a user has opted out of push notifications from his device for an app. (This will work only if support dependency 24+ is added and API level of the device is 19+).
New Feature: Added support for new push notification carousel layout.(Android support library version 24.+ is required)
New Feature: Added setter APIs for providing hashed email and hashed phone number of the user. Please refer user docs for more information.
Added support for 3 InApp layouts(Header, Footer, and Classic modal).
Added support of Geofencing.
Change: WebEngage SDK now truncates certain inputs beyond the below-mentioned limits:
- Event name: 50 characters
- Event attribute key: 50 characters
- Event attribute value (String): 1000 characters
- CUID(User Identifier): 100 characters
Change: WebEngage SDK no longer holds a weak reference to your callback implementations.
New Feature: Added support for nested attributes that can be only used in personalization.
New Feature: Added support for personalization through templates.
New Feature: Added support for In-app campaign in Journeys.
Added ability to change small and large icon of push notification from onPushNotificationReceived callback.
Added ability to change the accent color of push notification.
Bugfix: Fixed parcel-able unmarshalling bug which was occurring in some devices.
New Feature: Added ability to personalize in-app messages.
Bugfix: Fixed build failed issue caused by older Gradle versions.
New Features: Added ability to segment users based on the time occurrence of events(both system and application).
New Feature: Added ability to target users that have date type attributes that fall under a sliding time window. Eg: Send push notifications to users whose ticket booked date is within the next 7 days.
Added ability to segment users based on system events and attributes i.e now you can segment users based on their interaction with our engagement products.
Handled Runtime Location Permission in Marshmallow.
Added custom deep link support.
Handling of SDK version for backward compatibility.
Added "setAction()" method in "CallToAction" class that allows overriding the deep link or external URL received for a particular push or in-app.
Handling of Doze mode in Marshmallow.
setEveryActivityIsScreen()method to "WebEngage" class.
All callbacks implementation must reside in the main package of the application.
Renamed "ActionButton" class to "CallToAction" .
Removed default exception catching from "onPushNotificationReceived" and "onInAppNotificationPrepared" methods.
Added check for the prefix "we_" in custom event name.
Fixed issue caused by invalid CTA.
Fixed custom event attribute bug.
Updated about 1 month ago