Releases: Countly/countly-sdk-android
26.1.3
-
Added gradle configuration cache support to upload symbols plugin.
-
Improved user properties auto-save conditions to flush event queue with every user property call.
-
Mitigated
IncorrectContextUseViolationStrictMode warnings from non-UI context use in display metrics and content overlay construction. -
Mitigated an issue where content overlays and feedback widgets blocked keyboard input on the host activity.
-
Mitigated a memory retention issue where content overlays and feedback widgets were briefly held after closing.
-
Mitigated a memory leak where the content overlay retained its initial host activity across activity transitions.
-
Mitigated a memory leak where content overlays and feedback widgets remained referenced via lifecycle callbacks when the host activity finished.
26.1.2
- Added
CountlyInitProviderContentProvider to register activity lifecycle callbacks beforeApplication.onCreate(). This ensures the SDK captures the current activity in single-activity frameworks (Flutter, React Native) and apps with deferred initialization. - Added
CountlyConfig.setInitialActivity(Activity)as an explicit way for wrapper SDKs to provide the host activity during initialization. - Added a new config option
setMetricProvider(MetricProvider)to allow overriding default device metrics with custom values.
26.1.1
-
Added Content feature method
previewContent(String contentId)(Experimental!). -
Improved content display and refresh mechanics.
-
Mitigated an issue about health checks storage in explicit storage mode.
26.1.0
-
Extended server configuration capabilities with server-controlled listing filters:
- Event filters (blacklist/whitelist) to control which events are recorded.
- User property filters (blacklist/whitelist) to control which user properties are recorded.
- Segmentation filters (blacklist/whitelist) to control which segmentation keys are recorded.
- Event-specific segmentation filters (blacklist/whitelist) to control segmentation keys per event.
- User property cache limit to limit the number of user properties recorded per request.
-
Added support for Journey Trigger Events that trigger a content zone refresh when recorded.
-
Mitigated an issue where closing surveys that were presented via journeys was triggering an exception.
-
Mitigated an issue where when a content started loading opening a new activity could have hide it.
25.4.9
- Added a new config option
disableViewRestartForManualRecording()to disable auto close/restart behavior of manual views on app background/foreground actions.
25.4.8
- Mitigated an issue where push notifications were not shown when consent was not required and app was killed.
25.4.7
- Mitigated an issue where the navigation bar showed an unwanted shadow during content display.
25.4.6
- Improved content error handling and display mechanics.
- Updated user properties caching mechanism according to sessions.
25.4.5
-
Added a new config flag
setUseSerialExecutor(boolean useSerial)for selecting immediate request executor type. -
Added a new config option
setWebviewDisplayOption(WebViewDisplayOption)to control how Content and Feedback Widgets are displayed.IMMERSIVEmode (default): Full-screen display (except cutouts).SAFE_AREAmode: Omits status bar, navigation bar and cutouts when displaying WebView.
-
Added a new config option
disableGradualRequestCleaner()to change request queue overflow behavior. When enabled, all overflowing requests are removed at once instead of in batches. -
Added a new method
requestQueue().addCustomNetworkRequestHeaders(Map<String,String>)for providing or overriding custom headers after init. -
Mitigated a potential issue where Remote Config calls could have blocked the main UI thread processes.
-
Immediate requests now will be run by parallel executor instead of serial by default.
25.4.4
-
Improved disk size calculation in crash reports.
-
Added a new function "recordMetrics(metricsOverride)" to send a device metrics request, accessible through the requestQueue interface.
-
Added a new Consent option "metrics" for controlling "recordMetrics" method. (This has no effect on Session metrics.)
-
Added "setRequestTimeoutDuration(requestTimeoutDuration)" init config method to change request timeout duration in seconds.
-
Mitigated an issue displaying Content on API level 35 and above.