How can I specify a custom Bitmovin Analytics Collector version?

Learn how to specify a custom Bitmovin Analytics Collector version in your Bitmovin Android Player.

Starting from version 3.38.0, the Bitmovin Android Player depends on the Bitmovin Analytics Collector Major Version 2. From version 3.41.0, the Bitmovin Android Player depends on the major version 3.0.0 of the Bitmovin Analytics Collector.

This integration guarantees that you always have the most up-to-date version of the Analytics Collector, which we carefully ensure to be fully compatible with the Android Player.

In the event that you have a specific requirement to use a custom version of the collector, you can enforce the desired version by adding the following lines (replacing x.x.x with the version) to your build.gradle.kts or build.gradle file respectively:

dependencies {
    implementation("com.bitmovin.analytics:collector-bitmovin-player") {
        version {
            strictly("x.x.x")
        }
    }
}
dependencies {
    implementation('com.bitmovin.analytics:collector-bitmovin-player') {
        version {
            strictly 'x.x.x'
        }
    }
}

By applying these changes, you can specify the exact version of the collector you wish to use within your project. However, please note that using custom versions is generally discouraged, as it may lead to compatibility issues or the exclusion of important updates and enhancements.

🚧

Cautionary Note

Kindly note that employing this approach may also introduce a possibility of encountering runtime exceptions if the forced version of the collector and the Player dependency version are incompatible.
We highly recommend refraining from explicitly depending on the Bitmovin Analytics Collector and instead utilizing the provided dependency.

Important guidelines for using Bitmovin Analytics Collector v2 with Bitmovin Player 3.41.0 and above

When using Bitmovin Player 3.41.0 and above in conjunction with Bitmovin Analytics Collector v2, please adhere to the following guidelines:

  1. Avoid utilizing the new analytics feature of the player, such as player.analytics, Player.create(Context, PlayerConfig, BitmovinAnalyticsConfig), Source.create(SourceConfig, SourceMetadata), and their Java equivalents. Utilizing these features may lead to runtime exceptions.
  2. It is still possible to continue using the current Collector API as you have done before, as long as you refrain from mixing it with the new approach to accessing analytics.