Migration to PlayKit v3.6.0
In PlayKit version 3.6.0, some components were moved from the core module (playkit) to a new one. This guide describes the changes that need to be done in app config and code.
In addition, there’s a minor change to the PKPlugin.Factory interface.
On this page:
- Media Providers and Core Analytics Plugins
- Youbora Plugin
- IMA Plugin
- Google Cast Addon
- Resolving build conflicts
- Plugin Interface
Media Providers and Core Analytics Plugins
Add a dependency in build.gradle
implementation com.kaltura.playkit:playkitproviders:VERSION
Media Providers (OVP and Phoenix)
Package renames:
- com.kaltura.playkit.backend.ovp was renamed to com.kaltura.playkit.providers.ott
- com.kaltura.playkit.backend.phoenix was renamed to com.kaltura.playkit.providers.ovp
Simple Session Provider
SimpleOvpSessionProvider
was moved from com.kaltura.playkit.api.ovp to com.kaltura.playkit.providers.api and renamed to SimpleSessionProvider
.
The name change signifies that this SessionProvider
can be used for both OVP and OTT (Phoenix).
Stats and LiveStats Plugins
The following classes have moved from com.kaltura.playkit.plugins to com.kaltura.playkit.plugins.ovp:
KalturaStatsPlugin
, KalturaStatsConfig
, KalturaLiveStatsPlugin
, KalturaLiveStatsConfig
Phoenix and TVPAPI Analytics Plugins
The following classes have moved from com.kaltura.playkit.plugins to com.kaltura.playkit.plugins.ott:
PhoenixAnalyticsPlugin
, PhoenixAnalyticsConfig
, TVPAPIAnalyticsPlugin
, TVPAPIAnalyticsConfig
Youbora Plugin
Add a dependency in build.gradle:
implementation com.kaltura.playkit:youboraplugin:VERSION
The package name remains com.kaltura.playkit.plugins.youbora.
IMA Plugin
Add a dependency in build.gradle
implementation com.kaltura.playkit:imaplugin:VERSION
Update imports
Package com.kaltura.playkit.plugins.ima was renamed to com.kaltura.playkit.plugins.ads.ima.
Google Cast Addon
Add a dependency in build.gradle
implementation com.kaltura.playkit:googlecastplugin:VERSION
Update imports
Package com.kaltura.playkit.addon.cast was renamed to com.kaltura.playkit.plugins.googlecast.
Resolving build conflicts
All of the plugins (except for Google Cast) depend on PlayKit. If the app is not using exactly the same PlayKit version as the plugins, there will be conflicts. To resolve them, you need to exclude the PlayKit module that comes with the plugins when adding them to build.gradle.
Example
// App uses PlayKit v3.6.1
implementation 'com.kaltura.playkit:playkit:3.6.1'
// Use the providers module and exclude the PlayKit that comes with it.
implementation 'com.kaltura.playkit:playkitproviders:1.0.2', {
exclude group: 'com.kaltura.playkit', module: 'playkit'
}
Plugin Interface
The PKPlugin.Factory interface has a new method required to be implemented, getVersion()
. The method returns a String
– version of the plugin. It is used when the player gathers diagnostic data about the running plugins.
The version should comply with Semantic Versioning.