Releases: Countly/countly-sdk-flutter-bridge
25.1.0-np
-
Added experimental support for the web platform in the Countly Flutter SDK. Some functionalities are not yet fully supported. Below is the list of limitations for the web platform:
- Hybrid sessions are the default; full manual sessions are not supported.
- Features Not Supported: Push Notifications, APM, and Attribution.
- Countly.setUserLocation and Countly.disableLocation are unavailable.
- In Views, the following view-related functions are not supported:
- startView
- stopViewWithName
- stopViewWithID
- stopAllViews
- pauseViewWithID
- resumeViewWithID
- addSegmentationToViewWithName
- addSegmentationToViewWithID
- updateGlobalViewSegmentation
- setGlobalViewSegmentation
- In Remote Config, the clearAll function is unavailable, and caching functionality is not provided.
- In A/B Testing the following are not supported:
- exitABTestsForKeys
- Variant-level control
- Experiment-level control
- Star Rating and related configuration options are unavailable.
- User properties during initialization are not supported.
- Custom network headers are not supported.
- Dropping old requests is not supported.
- Content zone global callback is not supported.
- Experimental configuration options are not supported.
-
Added 'event' interface for events methods which are
- recordEvent(String key, [Map<String, Object>? segmentation, int? count, int? sum, int? duration])
- startEvent(String key)
- endEvent(String key, [Map<String, Object>? segmentation, int? count, int? sum])
- cancelEvent(String key)
-
Added 'cancelEvent' to cancel a timed event, it is accesible through 'events' interface
-
Deprecated the following methods from the Countly
- 'recordEvent(options)', instead use 'events.recordEvent(key, [segmentation, count, sum, duration])
- 'startEvent(key)', instead use 'events.startEvent(key)'
- 'endEvent(options)', instead use 'events.endEvent(key, [segmentation, count, sum])'
-
Improved content size management for better adaptability across devices.
-
Resolved an issue where the action bar overlapped with the content display.
-
Added dynamic resizing functionality for the content zone for enhanced responsiveness.
-
Introduced a configuration option (setZoneTimerInterval) to customize the content zone timer interval.
-
Enhanced CertificateTrustManager to support domain-specific configurations with hostname-aware checkServerTrusted calls (Android).
-
Fixed an issue where the build UUID and executable name were missing from crash reports (iOS).
-
- Mitigated an issue while setting zone timer interval for content (iOS).
-
Updated underlying Android SDK version to 25.1.1
-
Updated underlying iOS SDK version to 25.1.1
-
Added underlying Web SDK version to 25.1.0
25.1.0
-
Added experimental support for the web platform in the Countly Flutter SDK. Some functionalities are not yet fully supported. Below is the list of limitations for the web platform:
- Hybrid sessions are the default; full manual sessions are not supported.
- Features Not Supported: Push Notifications, APM, and Attribution.
- Countly.setUserLocation and Countly.disableLocation are unavailable.
- In Views, the following view-related functions are not supported:
- startView
- stopViewWithName
- stopViewWithID
- stopAllViews
- pauseViewWithID
- resumeViewWithID
- addSegmentationToViewWithName
- addSegmentationToViewWithID
- updateGlobalViewSegmentation
- setGlobalViewSegmentation
- In Remote Config, the clearAll function is unavailable, and caching functionality is not provided.
- In A/B Testing the following are not supported:
- exitABTestsForKeys
- Variant-level control
- Experiment-level control
- Star Rating and related configuration options are unavailable.
- User properties during initialization are not supported.
- Custom network headers are not supported.
- Dropping old requests is not supported.
- Content zone global callback is not supported.
- Experimental configuration options are not supported.
-
Added 'event' interface for events methods which are
- recordEvent(String key, [Map<String, Object>? segmentation, int? count, int? sum, int? duration])
- startEvent(String key)
- endEvent(String key, [Map<String, Object>? segmentation, int? count, int? sum])
- cancelEvent(String key)
-
Added 'cancelEvent' to cancel a timed event, it is accesible through 'events' interface
-
Deprecated the following methods from the Countly
- 'recordEvent(options)', instead use 'events.recordEvent(key, [segmentation, count, sum, duration])
- 'startEvent(key)', instead use 'events.startEvent(key)'
- 'endEvent(options)', instead use 'events.endEvent(key, [segmentation, count, sum])'
-
Improved content size management for better adaptability across devices.
-
Resolved an issue where the action bar overlapped with the content display.
-
Added dynamic resizing functionality for the content zone for enhanced responsiveness.
-
Introduced a configuration option (setZoneTimerInterval) to customize the content zone timer interval.
-
Enhanced CertificateTrustManager to support domain-specific configurations with hostname-aware checkServerTrusted calls (Android).
-
Fixed an issue where the build UUID and executable name were missing from crash reports (iOS).
-
Mitigated an issue while setting zone timer interval for content (iOS).
-
Updated underlying Android SDK version to 25.1.1
-
Updated underlying iOS SDK version to 25.1.1
-
Added underlying Web SDK version to 25.1.0
24.11.2-np
-
Improved view tracking capabilities in iOS.
-
Mitigated issues where:
- On Android 35 and above, the navigation bar was overlapping with the content display in Android.
- An automatically closed autoStopped view's duration could have increased when opening new views in Android.
- A concurrent modification error could have happen when starting multiple stopped views in iOS.
-
Updated underlying Android SDK version to 24.7.7
-
Updated underlying iOS SDK version to 24.7.9
24.11.2
-
Improved view tracking capabilities in iOS.
-
Mitigated issues where:
- On Android 35 and above, the navigation bar was overlapping with the content display in Android.
- An automatically closed autoStopped view's duration could have increased when opening new views in Android.
- A concurrent modification error could have happen when starting multiple stopped views in iOS.
-
Updated underlying Android SDK version to 24.7.7
-
Updated underlying iOS SDK version to 24.7.9
24.11.1-np
-
Added content configuration interface that has
setGlobalContentCallback
to get notified about content changes. -
Added support for localization of content blocks.
-
Added the interface
feedback
and convenience methods that presents the first available widget to user:- presentNPS([String? nameTagOrID, FeedbackCallback? callback])
- presentSurvey([String? nameTagOrID, FeedbackCallback? callback])
- presentRating([String? nameTagOrID, FeedbackCallback? callback])
-
Mitigated an issue where visibility could have been wrongly assigned if a view was closed while going to background. (Experimental!)
-
Mitigated issues where:
- Passing the global content callback was not possible in Android.
- The user provided URLSessionConfiguration was not applied to direct requests in iOS.
- A concurrent modification error could have happen when starting multiple stopped views in iOS.
-
Updated underlying Android SDK version to 24.7.6
-
Updated underlying iOS SDK version to 24.7.8
24.11.1
-
Added content configuration interface that has
setGlobalContentCallback
to get notified about content changes. -
Added support for localization of content blocks.
-
Added the interface
feedback
and convenience methods that presents the first available widget to user:- presentNPS([String? nameTagOrID, FeedbackCallback? callback])
- presentSurvey([String? nameTagOrID, FeedbackCallback? callback])
- presentRating([String? nameTagOrID, FeedbackCallback? callback])
-
Mitigated an issue where visibility could have been wrongly assigned if a view was closed while going to background. (Experimental!)
-
Mitigated issues where:
- Passing the global content callback was not possible in Android.
- The user provided URLSessionConfiguration was not applied to direct requests in iOS.
- A concurrent modification error could have happen when starting multiple stopped views in iOS.
-
Updated underlying Android SDK version to 24.7.6
-
Updated underlying iOS SDK version to 24.7.8
24.11.0-np
-
Added further intent redirection vulnerability checks in Android
-
Added support for Android 15 (API level 35)
-
Added a config flag
setCustomNetworkRequestHeaders
to add custom headers to SDK requests (thanks @sbatezat) -
Automatic view pause/resumes are changed with stop/start for better data consistency.
-
Added the config interface
experimental
to group experimental features. -
Added a flag
enablePreviousNameRecording
to add previous event/view and current view names as segmentation (Experimental!) -
Added a flag
enableVisibilityTracking
to add app visibility info to views (Experimental!) -
Added
Content
feature methods:enterContentZone
, to start Content checks(Experimental!)exitContentZone
, to stop content checks (Experimental!)
-
Added support for
List
values in user given segmentations of timed events. -
Mitigated an issue where an event was not recorded if a
count
was not provided. -
Fixed an issue where automatic crash reporting failed to capture Flutter framework errors when using the newly introduced config option.
-
Addressed an issue where asynchronous Dart errors were not being captured.
-
Addressed an issue that prevented the stacktrace from being properly recognized on the server
-
Updated the underlying Firebase Messaging SDK to version 24.0.3
-
Updated underlying Android SDK version to 24.7.5
-
Updated underlying iOS SDK version to 24.7.7
From this version on NP variant changelogs will be added to this branch!
24.11.0
-
Added further intent redirection vulnerability checks in Android
-
Added support for Android 15 (API level 35)
-
Added a config flag
setCustomNetworkRequestHeaders
to add custom headers to SDK requests (thanks @sbatezat) -
Automatic view pause/resumes are changed with stop/start for better data consistency.
-
Added the config interface
experimental
to group experimental features. -
Added a flag
enablePreviousNameRecording
to add previous event/view and current view names as segmentation (Experimental!) -
Added a flag
enableVisibilityTracking
to add app visibility info to views (Experimental!) -
Added
Content
feature methods:enterContentZone
, to start Content checks(Experimental!)exitContentZone
, to stop content checks (Experimental!)
-
Added support for
List
values in user given segmentations of timed events. -
Mitigated an issue where an event was not recorded if a
count
was not provided. -
Fixed an issue where automatic crash reporting failed to capture Flutter framework errors when using the newly introduced config option.
-
Addressed an issue where asynchronous Dart errors were not being captured.
-
Addressed an issue that prevented the stacktrace from being properly recognized on the server
-
Updated the underlying Firebase Messaging SDK to version 24.0.3
-
Updated underlying Android SDK version to 24.7.5
-
Updated underlying iOS SDK version to 24.7.7
From this version on NP variant changelogs will be added to -np
branches!
24.7.1-np
-
Added a new configuration option
enableTemporaryDeviceIDMode
to 'CountlyConfig' interface -
Introduced a new
deviceID
interface for grouping device ID management related methods:setID
changeWithMerge
changeWithoutMerge
getID
getIDType
enableTemporaryIDMode
-
Deprecated the following methods:
getCurrentDeviceId
getDeviceIDType
changeDeviceId
-
Mitigated issues where:
- session was ending with device ID change without merge, when consent was not required and manual session control was enabled in Android
- session was not starting after device ID change without merge, when consent was not required and automatic sessions were enabled in Android
- consent information was not sent when no consent was given during initialization in iOS
- session could have started if the SDK was initialized on the background and automatic session tracking was enabled in iOS
- session did not end when session consent was removed in iOS
- disabling location did not work in iOS
- orientation info was not sent during initialization in iOS
-
Updated underlying Android SDK version to 24.7.1
-
Updated underlying iOS SDK version to 24.7.1
24.7.1
-
Added a new configuration option
enableTemporaryDeviceIDMode
to 'CountlyConfig' interface -
Introduced a new
deviceID
interface for grouping device ID management related methods:setID
changeWithMerge
changeWithoutMerge
getID
getIDType
enableTemporaryIDMode
-
Deprecated the following methods:
getCurrentDeviceId
getDeviceIDType
changeDeviceId
-
Mitigated issues where:
- session was ending with device ID change without merge, when consent was not required and manual session control was enabled in Android
- session was not starting after device ID change without merge, when consent was not required and automatic sessions were enabled in Android
- consent information was not sent when no consent was given during initialization in iOS
- session could have started if the SDK was initialized on the background and automatic session tracking was enabled in iOS
- session did not end when session consent was removed in iOS
- disabling location did not work in iOS
- orientation info was not sent during initialization in iOS
-
Updated underlying Android SDK version to 24.7.1
-
Updated underlying iOS SDK version to 24.7.1