Release notes for the deprecated v1 version of the Analytics Collector can be found [here](🔗).
## 3.0.1
Released 2023-08-09
**Changed**
Upgrade example app to latest bitmovin player (`
v3.41.0
`)
**Fixed**
Backwards compatibility with bitmovin player `
< v3.39.0
`
## 3.0.0
Released 2023-07-31
This major version release changes how the collector is setup, how metadata is provided and introduces breaking changes compared to v2. Please check the [migration guide](🔗) for further information how to upgrade.
**Changed**
Introduced new API v3 for all players with breaking changes compared to v2
Upgraded to Kotlin 1.8.20
ExoPlayer: More specific PlaybackException mapping (using errorCodes instead of error types and errorCode names are now part of description)
Upgrade example app to latest bitmovin player (v3.40.0), latest ivs player (v1.20.0) and latest exoplayer (v2.19.0)
Bitmovin Player: Throw exception if two bitmovin analytics collector instances are attached to the same player instance
SourceUrls are autodetected and cannot be specified through metadata anymore
**Fixed**
Prevent context leaking through using context.applicationContext in constructors
Set current position for videoTimeStart and videoTimeEnd when customDataEvent is sent
IVS Player: Ignore isLive property for IVS player since it is just a fallback in case the player does not provide the information and IVS player doesn't differentiate between live and source not loaded, so it cannot be used there. This streamlines the behaviour with other players.
ExoPlayer: More reliable tracking if player is muted
**Known Issues**
This version only works with player version >= `
3.39.0
`. A fix is provided with collector version `3.0.1
`.
## 2.18.0
Released 2023-05-26
**Added**
Support to collect analytics data while device is offline. This can be enabled with the new collector config longTermRetryEnabled, which is default false. When this config is enabled, the collector will send the collected analytics data once the device is online again.
**Changed**
Upgrade example app to latest bitmovin player (v3.38.0) and latest exoplayer version (v2.18.7)
## 2.17.0
Released 2023-04-28
**This release changes how we manage dependencies to the players.**
We changed the dependency to the player from `implementation
` to `compileOnly
` in order to simplify dependency management when using our collector (no strict versioning needed anymore to use older versions of the player for example). This change requires that the consuming application has an explicit dependency to the player. If the application already has an explicit dependency to the player, then there is no adaption needed.
An example for the bitmovin player can be found [here](🔗).
**Changed**
All collectors use `
compileOnly
` dependency to players instead of `implementation
`Upgrade example app to latest bitmovin player (v3.37.0)
Upgrade example app to latest exoplayer version (v2.18.6)
IVS Player and ExoPlayer: Streamlined reporting of video duration for live streams to be 0, to be consistent with other players/platforms
## 2.16.0
Released 2023-04-17
**Changed**
Upgrade example apps to use latest amazon ivs player (`
v1.18.0
`) and latest bitmovin player (`v3.35.2
`)
**Fixed**
Bitmovin Player: New quality on quality change events was tracked one sample too early
IVS Player: Wrong initialization order on startup
IVS Player: Wrong order of releasing of resources when collector is detached
IVS Player: Reporting of negative droppedFrames in certain edgecases
ExoPlayer and Bitmovin Player: Tracking if player is muted was missing
All players: Wrong reporting of `
videostartup_time = 0
` on certain edgecases where startup was very fast
## 2.15.0
Released 2023-04-03
**Added**
Amazon IVS player support
**Changed**
Upgraded example apps to latest bitmovin player (`
v3.35.1
`) and latest exoplayer (`v2.18.5
`)
**Fixed**
Workaround issue in Bitmovin Player version `
3.34.0
` and `3.35.0
` that would lead to a `ClassNotFoundException
` when detecting the player version.
## 2.14.0
Released 2023-03-07
**Added**
Interfaces and Factories for each collector
Descriptive error messages for analytics errors
**Changed**
Upgraded okhttp3 to `
v4.10.0
` (this is a major version upgrade from v3 to v4)Upgraded `
gson
` dependency to `v2.8.9
`Upgraded `
androidx.appcompat
` dependency to `v1.6.1
`Upgraded example apps to latest bitmovin player (`
v3.33.0
`) and latest exoplayer (`v2.18.4
`)Deprecated obsolete PlayerType config in AnalyticsConfig
Made all bitmovin and exoplayer collector classes that are not part of the public API internal
**Removed**
Removed `
v1
` collectors which were deprecated already
**Fixed**
ExoPlayer `
v2.18.3
` could crash on detaching of analytics collector on certain scenariosTracking of bitmovin player key when it is specified in the manifest
Tracking of audiolanguage, audiocodec and videocodec for exoplayer
Serialization issues when ProGuard is used for obfuscation
Stopped sending samples when player is released but collector is still attached
**Known Issues**
Bitmovin Collector`
<= 2.14.0
` is incompatible with Bitmovin Player `v3.35.0
` and `v3.34.0
` (crashes during startup), this issue is fixed with Bitmovin Collector `v2.15.0
` or Bitmovin Player `v3.35.1
`
## 2.13.0
Released 2023-01-24
**Added**
Detection of FireOS 8
**Changed**
BitmovinPlayer: Improved ad tracking
**Fixed**
Detection of UHD screens on AndroidTVs
**Known Issues**
Bitmovin Collector`
<= 2.14.0
` is incompatible with Bitmovin Player `v3.35.0
` and `v3.34.0
` (crashes during startup), this issue is fixed with Bitmovin Collector `v2.15.0
` or Bitmovin Player `v3.35.1
`
## 2.12.2
Released 2022-12-22
**Changed**
Increased collected error stacktrace size to 50 lines
**Known Issues**
Bitmovin Collector`
<= 2.14.0
` is incompatible with Bitmovin Player `v3.35.0
` and `v3.34.0
` (crashes during startup), this issue is fixed with Bitmovin Collector `v2.15.0
` or Bitmovin Player `v3.35.1
`
## 2.12.1
Released 2022-11-28
**Changed**
Upgraded Kotlin Version to `
1.7.20
`Updated example apps to reflect latest player changes
**Fixed**
Race Condition during startup when analytics license is not enabled
**Known Issues**
Bitmovin Collector`
<= 2.14.0
` is incompatible with Bitmovin Player `v3.35.0
` and `v3.34.0
` (crashes during startup), this issue is fixed with Bitmovin Collector `v2.15.0
` or Bitmovin Player `v3.35.1
`
## 2.12.0
Released 2022-10-25
**Fixed**
Race condition on HttpRequestTracking feature
**Known Issues**
Bitmovin Collector`
<= 2.14.0
` is incompatible with Bitmovin Player `v3.35.0
` and `v3.34.0
` (crashes during startup), this issue is fixed with Bitmovin Collector `v2.15.0
` or Bitmovin Player `v3.35.1
`
## 2.11.0
Released 2022-08-30
**Added**
option to pass progressive URL via `
progUrl
` to `BitmovinAnalyticsConfig
` and `SourceMetadata
`
## 2.10.0
Released 2022-07-06
**Changed**
updates dependency of ExoPlayer to`
2.18.x
`
**Fixed**
fixed issue where late attaching of collector caused `
videoStartupTime = 0
`
## 2.9.0
Released 2022-06-28
**Added**
Add exception message to error_message field of sample for ExoPlayer collector
## 2.8.0
Released 2022-06-09
**Added**
`
getUserId
` to adapter API to retrieve the user IDBitmovinPlayer: if `
playerKey
` is not set on `BitmovinAnalyticsConfig
` value from the player is used
**Removed**
Heartbeat interval duration configuration on `
BitmovinAnalyticsConfig
`
## 2.7.1
Released 2022-04-13
**Fixed**
screen size detection for devices with a logical display `
density != 1
`
## 2.7.0
Released 2022-04-11
**Changed**
updates dependency of ExoPlayer to `
>=2.17.0 & <2.18.0
`
**Removed**
Support for SimpleExoPlayer class
## 2.6.2
Released 2022-04-11
**Fixed**
Wrong transitions from `
startup
` state to `paused
` state
## 2.6.1
Released 2022-03-22
**Changed**
bitmovin player dependency update and internal refactorings
improved exception handing on error detail tracking
## 2.6.0
Released 2022-01-24
**Added**
`
customData
` fields 26-30
## 2.5.0
Released 2021-12-15
**Added**
Detection of FireOS devices
## 2.4.0
Released 2021-11-04
**Added**
`
version
` property on Collector classes
## 2.3.0
Released 2021-10-27
**Added**
`
customData
` fields 8 to 25
## 2.2.0
Released 2021-10-01
**Added**
Error detail tracking feature
`
castTech
` field
**Removed**
Unintended public methods from Collector classes
**Fixed**
BitmovinPlayerCollector didn't report some metrics with sub-second granularity
ExoPlayerCollector used wrong field to track audioBitrate
ExoPlayerCollector reported `
qualitychange
` events although the quality did not change
## 2.1.0
Released 2021-06-22
**Added**
Option to generate randomized userId value
## 2.0.0
Released 2021-05-26
**Added**
Support for BitmovinPlayer `
v3
`Support for ExoPlayer version `
>= 2.12
`