Migration to PlayKit v3.7.0
In PlayKit version 3.7.0, some components were moved from the core Pod (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:
Subspecs migrated to Pods
For each of the following, you have to replace a subspec decledation with a full pod declaration. In addition, since the component is no longer in the PlayKit
module, another import
has to be added in code.
Kaltura Core Services
The following subspecs have moved to a new pod, PlayKitProviders
:
PlayKit/PhoenixPlugin
PlayKit/KalturaStatsPlugin
PlayKit/KalturaLiveStatsPlugin
In addition - OVPMediaProvider
, PhoenixMediaProvider
and related classes have moved to the new providers pod as well.
Youbora Plugin
- Old subspec:
PlayKit/Youbora
- New pod:
PlayKitYoubora
Google Cast
- Old subspec:
PlayKit/GoogleCastAddon
- New pod:
PlayKitGoogleCast
Plugin Interface
The PKPlugin protocol has a new static property, pluginVersion
.
The default (implemented in BasePlugin) is the plugin’s bundle CFBundleShortVersionString
:
Bundle(for: pluginClass).object(forInfoDictionaryKey: "CFBundleShortVersionString")
Override this function to provide a version from a different source.
Example for overriding:
@objc override public class var pluginVersion: String {
return "1.2.3"
}
If CFBundleShortVersionString
wasn’t found (or is not a string), and no alternative implementation is
provided, the string "?.?.?"
is used.
The version should comply with Semantic Versioning.