logo
SDKs
IntroductionHow to update an SDK?THEOplayer 5.0 - Native Mobile iOS/tvOS and Android SDKs
Web
Getting started on Web (Extended)Getting started with the new Web UIGetting started on WebAPI examplesHow to implement Keyboard HotkeysHow to embed an iframeHow to implement a seamless transition between videos?How can I use video inside THEOplayer?How to work around browser cache with a new license?How to customise quality selection & labels (MP4)How to get frame-accurate currentTime display in the UI Control barHow to play an LCEVC source with THEOplayerHow to use WebXR with THEOplayer
Android legacy (4.12.x)
Getting started on Legacy Android SDK (4.12.x)Legacy Android SDK (4.12.x) customizationHow to couple the native MediaRouteButton to THEOplayerHow to enable -experimental- native rendering on AndroidHow to do offline Playback with AES-128 Encrypted Streams on Android
Android
Getting started with the Android UIGetting started on AndroidAndroid Feature IntegrationsMigration from THEOplayer Android/AndroidTV/FireTV SDK 4.x to THEOplayer Android SDK 5.0
iOS legacy (4.12.x)
Getting started on iOSiOS/tvOS SDK and Legacy iOS/tvOS SDK (4.12.x) CustomizationMy app does not want to build for the app storeHow to bypass copy() not working in Safari consoleHow to couple the native GCKUICastButton to THEOplayeriOS/tvOS SDK and Legacy iOS/tvOS SDK (4.12.x) Touch-events (gestures)Building for iOS Simulator, but the linked and embedded framework THEOplayerSDK.framework was built for iOS + iOS SimulatorHow to implement custom local network access (LNA) interstitial dialog for Chromecast
iOS
Getting started guide for THEOplayer iOS/tvOS SDK 5.0THEOplayer iOS/tvOS 5.0 Feature IntegrationsMigration from THEOplayer iOS and tvOS SDK 4.x to THEOplayer iOS/tvOS SDK 5.0
Android TV Legacy (4.12.x)
Getting started on Android TV Legacy (4.12.x)
tvOS
Getting started on tvOS
Chromecast
Getting started on ChromecastChromecast Application Customization
Webos
Getting Started on webOS
Tizen
Getting started on TizenInstalling the Tizen developer toolsSetting up a Tizen device for debuggingDeploying a test app on a physical Tizen deviceDeploying a test app on a Tizen emulator
Roku
Getting Started on Roku
Fire TV Legacy (4.12.x)
Getting started on Fire TV Legacy (4.12.x)
Frameworks

Android Feature Integrations

Modularization

The Android THEOplayer SDK uses modularized features, which means there is a base SDK that can handle basic playback and additional feature integrations are provided as separate modules that can be added as desired. This approach gives more flexibility and results in a reduced application size, since non-required parts are not included in the build of the application.

For example, the base SDK is provided by:

implementation 'com.theoplayer.theoplayer-sdk-android:core:+'

Meanwhile, additional features such as Google IMA and Google Cast are provided by:

implementation 'com.theoplayer.theoplayer-sdk-android:integration-ads-ima:+'
implementation 'com.theoplayer.theoplayer-sdk-android:integration-cast:+'

Importing additional integration modules

As shown in the previous section, importing additional integration modules can be done by simply adding the dependency in the build.gradle file of the module using THEOplayer.

Important Note: It is required to keep the Android base SDK and all the required feature modules on the same version number. For example one should not import core:3.6.0 and integration-cast:3.5.0 in the same project.

Adding integrations

After importing the dependencies, it's time to create the integrations and connect them to THEOplayer.

Each module provides a Factory class that allows the creation of that specific integration. For example, the Google IMA module provides GoogleImaIntegrationFactory and the Google Cast module provides CastIntegrationFactory.

Additionally, the Player class provides the addIntegration(Integration integration) API which allows adding the integration to the player.

Connecting the feature integration with the Player will make them available to be used. Otherwise, calling an API from an integration without adding it to the Player will cause an error to be thrown.

Available feature integrations

With Android THEOplayer SDK we currently support the following feature integrations:

Feature Dependency Release Documentation
Google IMA integration-ads-ima:+ 3.1.0+ documentation
Chromecast integration-cast:+ 3.4.0+ documentation
AWS MediaTailor integration-ads-mediatailor:+ 4.0.0+ documentation
Google DAI integration-ads-dai:+ 4.3.0+ documentation
github
Make sure to follow us on GitHub!
THEO-logo-white
twitter
facebook
linkedin
Copyright © 2022. All Rights Reserved.
Leuven
New York
Singapore
Barcelona