Skip to content

Releases: Countly/countly-sdk-android

24.7.0

01 Jul 11:35
ac2f14f
Compare
Choose a tag to compare
  • ! 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

21 May 12:55
0d3136e
Compare
Choose a tag to compare
  • ! 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

03 Apr 12:02
Compare
Choose a tag to compare
  • ! 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

19 Feb 20:07
Compare
Choose a tag to compare
  • Added a new metric for detecting whether or not a device has a hinge

24.1.0

26 Jan 07:13
Compare
Choose a tag to compare
  • ! 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

15 Dec 13:06
1067d29
Compare
Choose a tag to compare
  • 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

02 Nov 14:14
Compare
Choose a tag to compare
  • Mitigated an issue where the device ID was changed after exiting an AB experiment

23.8.3

18 Oct 14:15
Compare
Choose a tag to compare
  • 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

18 Sep 11:56
Compare
Choose a tag to compare
  • 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

14 Sep 10:39
Compare
Choose a tag to compare
  • Adding an additional testing call for retrieving AB test experiment information