Releases: Countly/countly-sdk-android
24.7.0
-
! Minor breaking change ! User properties will now be automatically saved under the following conditions:
- When an event is recorded
- During an internal timer tick
- Upon flushing the event queue
-
Added array, List, and JSONArray support to all user-given segmentations. They will support only mutable and immutable versions of the primitive types. Which are:
- String, Integer, int, Boolean, bool, Float, float, Double, double, Long, long
- Keep in mind that the float array will be converted to a double array by the JSONArray
-
Mitigated an issue where remote config values caching was changing due to a device ID change, but it is not anymore. It is linked to the configuration "enableRemoteConfigValueCaching" now.
-
Mitigated an issue related to the device ID by creating an internal migration.
-
Resolved a problem where revoked consents were sent after changes without merging.
-
Fixed a bug that caused the device ID to be incorrectly set after changes with merging.
-
Mitigated an issue where, on consent revoke, remote configuration values were cleared, but they are not anymore.
-
Change device id with merge not reporting session duration anymore.
24.4.1
-
! Minor breaking change ! Mitigated an issue where internal SDK limits did not apply
-
Added support for Feedback Widget terms and conditions
-
Added a new function "setID(newDeviceId)" which internally handles merge/non-merge selection while changing the device ID
-
Mitigated an issue where the session duration could have been calculated wrongly after a device ID change without merge
-
Mitigated an issue where a session could have continued after a device ID change without merge
24.4.0
-
! Minor breaking change ! If a manual session is already started, it will not be possible to call "BeginSession" without stopping the previous one
-
! Minor breaking change ! If a manual session has not been started, it will not be possible to call "UpdateSession"
-
! Minor breaking change ! If a manual session has not been started, it will not be possible to call "EndSession"
-
! Minor breaking change ! Setting for enabling/disabling for native crash dumps will be always enabled
-
Added an extended way of crash filtering
-
Added SDK internal limits configuration interface
-
Deprecated the following calls from "CountlyConfig":
- "setMaxSegmentationValues(maxSegmentationValues)" instead use "sdkInternalLimits.setMaxSegmentationValues(maxSegmentationValues)"
- "setMaxBreadcrumbCount(maxBreadcrumbCount)" instead use "sdkInternalLimits.setMaxBreadcrumbCount(maxBreadcrumbCount)"
- "setCrashFilterCallback(crashFilterCallback)" instead use "crashes.setGlobalCrashFilterCallback(globalCrashFilterCallback)"
- "enableCrashReporting()" instead use "crashes.enableCrashReporting()"
- "setCustomCrashSegment(crashSegmentation)" instead use "crashes.setCustomCrashSegmentation(crashSegmentation)"
- "setRecordAllThreadsWithCrash()" instead use "crashes.enableRecordAllThreadsWithCrash()"
- "checkForNativeCrashDumps(checkForDumps)", it will be removed in the future, there is no replacement
24.1.1
- Added a new metric for detecting whether or not a device has a hinge
24.1.0
-
! Minor breaking change ! Tracking of foreground and background reporting for APM is now disabled by default
-
Added a way to enable tracking of foreground and background reporting for APM
-
Fixed a bug where sending a local picture with checksum was not possible
-
Deprecated the following calls from "Apm" interface:
- "triggerBackground"
- "triggerForeground"
-
Deprecated following functions from "CountlyConfig":
- "setRecordAppStartTime(recordAppStartTime)" instead use "apm.enableAppStartTimeTracking()"
- "setAppStartTimestampOverride(appStartTimestampOverride)" instead use "apm.setAppStartTimestampOverride(appStartTimestampOverride)"
- "enableManualAppLoadedTrigger()" instead use "apm.enableManualAppLoadedTrigger()"
- "enableManualForegroundBackgroundTriggerAPM()" will be deleted in the future
23.12.0
- Mitigated a rare issue related to handling request headers
- Added 'addSegmentationToViewWithID' method for adding segmentation to an ongoing view
- Added 'addSegmentationToViewWithName' method for adding segmentation to an ongoing view
23.8.4
- Mitigated an issue where the device ID was changed after exiting an AB experiment
23.8.3
-
Added a config method to set a time limit after which the requests would be removed if not sent to the server: 'setRequestDropAgeHours'
-
Added a call to enroll users to A/B tests when getting a remote config value: 'getValueAndEnroll'
-
Added a call to enroll users to A/B tests when getting all remote config values: 'getAllValuesAndEnroll'
-
Adding app version to every request
-
Fixed crash for SDK34 BroadcastReceivers, now declared broadcast receiver not exported if API is 34 and up.
-
Mitigated an issue where users could not enroll to an A/B tests if enrollment request has failed
-
Mitigated an issue where users could not exit from A/B tests if removal request has failed
23.8.2
- Fixed APM bug where automatic foreground, background tracking would track wrong if the SDK was not initialized while the app was not in the foreground
23.8.1
- Adding an additional testing call for retrieving AB test experiment information