Analytics Collector - iOS v1
⚠️ This page contains Release Notes for the v1 version (UNSUPPORTED) of the Analytics iOS Collector. You can find the current, v2 release notes here.
1.30.0
Released 2023-01-09
Final major release of iOS Collector v1. Version 1 is now officially deprecated as per our support policy and will not receive any future feature or bugfix releases
Added
- added tracking of ad samples
Changed
- improved error handling
1.29.4
Released 2022-12-12
Fixed
- AVPlayer: fake seeks with less than 300ms caused by timeJumpedNotifications
1.29.3
Released 2022-12-05
Fixed
- issues with SPM because of @testable import in non-test file
1.29.2
Released 2022-06-08
Removed
- Heartbeat interval duration configuration on BitmovinAnalyticsConfig
Fixed
- BitmovinPlayer: tracking of seeking events
1.29.1
Released 2022-05-23
Added
@objc
annotations to allow embedding the Collector in Objective-C Applications
1.29.0
Released 2022-05-18
Added
- new method getUserId on all collectors to get used userId
1.28.0
Released 2022-04-22
Fixed
- AVPlayer: collector caused apps to freeze when drm playback was used
Deprecated
- deprecated AVPlayerCollector - use AVPlayerCollector in >v2.8.0
1.28.0-beta1
Released 2022-04-05
Changed
- strict protocol Collector as public API for player collectors
- during paused state we do not track qualityChange, seeking and buffering
- reworked tracking of seeking
Deprecated
- deprecated AVPlayerCollector - use AVPlayerCollector in >v2.8.0
1.27.0
Released 2022-03-23
Added
- improved device information tracking
Fixed
- tracking of
analytics_version
don't use CFBundleShortVersionString - fixed typo in compiler config
ENABLE_BITCODE
1.26.1
Released 2022-03-16
Fixed
- correctly handling changes of observed AVPlayer elements
1.26.0
Released 2022-01-19
Added
- additional customData fields 26 to 30
Known Issues
- AVPlayerAdapter incorrectly handles player events
1.25.1
Released 2022-01-16
Fixed
- correctly handling changes of observed AVPlayer elements
1.25.0
Released 2022-01-14
Changed
- startup time tracking when autoplay is enabled starts from SourceLoaded event
- transition to playing state if collector is attached after player started playing
Known Issues
- AVPlayerAdapter incorrectly handles player events
1.24.2
Released 2022-01-16
Fixed
- correctly handling changes of observed AVPlayer elements
1.24.1
Released 2021-12-07
Fixed
- correctly add/remove observers for AVPlayer elements
1.24.0
Released 2021-11-05
Added
- version property on Collector classes
Changed
- version is now hard-coded into source and not taken from CFBundleShortVersionString
Known Issues
- AVPlayerAdapter incorrectly handles player events
1.23.0
Released 2021-10-27
Added
- Additional customData fields 8 to 25
Changed
- Collector will send one final sample on destroy if player is playing
1.22.0
Released 2021-08-02
Added
- castTech payload field to differentiate between Airplay and GoogleCast
1.21.0
Released 2021-07-06
Added
- AVPlayer: listening for AVPlayerItemDidPlayToEndTime notifications for determining end of playback
Changed
- AVPlayer: current video bitrate is now correctly calculated
Fixed
- AVPlayer: detection of streamFormat and streamURL when source URL contains queryParameters
1.20.0
Released 2021-06-21
Added
- setCustomData and setCustomDataOnce methods
- randomizedUserId configuration property
Fixed
- AVPlayer: wrong tracking of startup_time when no source is attached to player
1.20.0-beta2
Released 2021-05-04
Fixed
- compile error in XCode 12.5 due to wrong enum class import for BitmovinPlayer v3
1.20.0-beta1
Released 2021-04-28
Added
- Support for BitmovinPlayer v3
Removed
- Possibility to include all adapters available in BitmovinPlayerCollector at one time using CocoaPods
1.19.1
Released 2021-04-04
Fixed
- compile error in XCode 12.5 due to wrong enum class import
1.19.0
Released 2021-03-31
Changed
- Extraction of vastAdData.survey.uri now supports both String and URL data types for compatibility with BitmovinPlayer >= 2.62.0
1.18.3
Released 2021-03-24
Fixed
- AVPlayer collector didn't correctly detect resuming of playback after a buffering event
1.18.2
Released 2021-03-01
Fixed
- A strong reference to the player adapter prevented the collector from being removed from memory after calling detachPlayer
1.18.1
Released 2021-01-27
Fixed
- In case of a startup failure or rebuffer timeout, the collector tried to recursively detach the player, which resulted in a collector crash
1.18.0
Released 2020-11-23
Added
- Failed Play Attempts, due to a timeout, are now considered as an
ANALYTICS_VIDEOSTART_TIMEOUT_REACHED
error. They are now also visible in the Dashboard Top Error view
Changed
- The collector stops monitoring after a video startup failure or rebuffer timeout is encountered
- Errors can have a timeout of 1 minute before they will occur again
Fixed
- Issues with rebuffer hearthbeat, when an ANALYTICS_BUFFERING_TIMEOUT_REACHED error occurs
1.17.0
Released 2020-08-31
Changed
- Updated BitmovinPlayer dependency to 2.51.0
1.16.0
Released 2020-08-04
Added
- maximum threshold for quality change events error sample sent if quality change threshold has been exceeded (
ANALYTICS_QUALITY_CHANGE_THRESHOLD_EXCEEDED
) - error sample sent if continuous buffering exceeds threshold (
ANALYTICS_BUFFERING_TIMEOUT_REACHED
)
1.15.0
Released 2020-06-22
Added
- Tracking drm metrics (drmType, drmLoadTime) for Bitmovin iOS SDK if Fairplay DRM system is used
- Tracking drmType for AVFoundation player if Fairplay DRM system is used
Changed
- Changed the tracking of video startup times when autoplay is enabled in order to be consistent with the web collector
1.14.0
Released 2020-06-22
Added
- errorData to sample for AVPlayer
Changed
- only send qualitychange samples when bitrate changed in Bitmovin Player
1.13.0
Released 2020-04-28
Added
- Heartbeat during rebuffering state
Fixed
- Error message for Bitmovin Player
- Minor bugfixes related to seek tracking in the State machine
1.11.0
Released 2020-03-26
Added
- Added Analytics AdAdapter for Bitmovin Player
- New boolean configuration field called ads to indicate that Ads should be tracked.
1.10.1
Released 2019-12-02
Fixed
- videoTimeEnd is set to videoDuration in the playbackFinished event
- Resolution of videoTimeStart and videoTimeEnd is now in milliseconds instead of seconds
- Collector triggered outgoing payload in pause state
1.10.0
Released 2019-11-26
Added
- added customData6 and customData7 to outgoing payload
1.9.0
Released 2019-11-11
Added
- New boolean configuration field called isLive to indicate if the upcoming stream is a live stream. Will be overridden once playback metadata is available.
1.8.0
Released 2019-09-26
Added
- Tracking of selected subtitle and subtitle language for Bitmovin Player
- Tracking of selected audio language for Bitmovin Player
1.7.5
Released 2019-08-28
Added
- @objc annotations to allow embedding the Collector in Objective-C Applications
1.7.4
Released 2019-07-24
Changed
- Xcode 10.2 and Swift 5.0 updates
1.7.3
Released 2019-07-01
Fixed
- Fixed occasional crashes when currentTime from player is NaN
1.7.2
Released 2019-05-27
Fixed
- AVPlayer reported some warnings as errors and got stuck in an error state, even if playback was able to continue
1.7.1
Released 2019-05-08
Changed
- AVPlayer Collector now reports playerVersion as avplayer-
- Bitmovin Collector now reports playerVersion as bitmovin-
Fixed
- Collector didn't populate buffered field when buffering occured
- Collector didn't correctly report streamFormat, m3u8Url, mpdUrl or progUrl
- videoTimeStart and videoTimeEnd were not set when sending out heartbeats
- Collector didn't report errors when using the AVPlayerCollector
- Collector didn't reset on onSourceUnloaded and continued sending samples with the inital impression_id, if detachPlayer wasn't called
1.7.0
Released 2019-04-15
Added
- Tracking of currently used video codec for playback
- Tracking of client's supported video codecs
Fixed
- Collector didn't report the correct version of the Bitmovin player
- Added additional cases to the platform field (watchOS, macOS, Linux and unknown
1.6.0
Released 2019-02-27
Added
- Split project into Core, AVPlayer and BitmovinPlayer to avoid unnecessary dependency imports
- Added debug logging for denied licensing requests to facilitate debugging of allowed package names
1.5.3
Released 2018-12-19
Added
- Sequence Number of outgoing Analytics samples
- platform field in outgoing Analytics samples
1.5.2
Released 2018-09-26
Changed
- Updated Swift version specification for Cocoapods >= 1.4
1.5.1
Released 2018-09-24
Changed
- Changed Podspec dependency on Bitmovin Player iOS SDK to allow all versions >= 2.11
- Explicitly set Swift version 4.0 because of XCode 10 release
1.5.0
Released 2018-09-20
Added
- title metadata configuration (human readable variant of videoId)
Fixed
- Generated userId was not persisted between sessions so unique users was not correctly reported
userId is now correctly persisted in UserDefaults as com.bitmovin.analytics.collector_defaults
1.4.1
Released 2018-08-21
Added
- Support for Bitmovin Player iOS SDK 2.11.0
1.4.0
Released 2018-07-11
Added
- tvOS support
1.3.2
Fixed
videoTimeEnd
calculation
Changed
videoTimeEnd
&videoTimeStart
changed to int64
1.3.1
Changed
- changed timestamp types to int64
1.3.0
Changed
CdnProvider
to be a string instead of a fixed enum.- Added
CdnProvider
struct with predefined constants
1.2.2
Fixed
- video duration is reported as milliseconds not as seconds
1.2.1
Fixed
- crash related to NaN and Infinite video durations from live streams
1.1.0
Added
- Support for Bitmovin Player iOS SDK 2.8.0
1.0.0
Added
- Support for AVFoundation
- Support for Bitmovin Player iOS SDK