Overview: Brightcove Player SDK for Android

The page you are looking for doesn't live here anymore -- redirecting you to in 3 seconds.

Welcome to the Android SDK developer documentation. Here you will find the information needed to develop with the Android SDK.

Documentation structure

At Brightcove, we strive to keep the documentation structured, clean and intuitive. As such, we leverage github READMEs for details on all our plugins and integrations. For your convenience, we've listed and linked to these plugins below.

Supported versions

The Native Player SDK for Android offers support for the following versions of Android:

Active support

Brightcove provides active support for the latest Android SDK on the following Android versions:

  • 7.0
  • 6.0
  • 5.0, 5.1
  • 4.4

Passive support

Brightcove provides passive support for the following Android versions:

  • 4.1, 4.2, 4.3

Understanding support levels

Support is defined in terms of the [major version].[minor version] of an OS (for example: Android 4.1). There are two levels of support:

  • Active: Brightcove will test and fix bugs on these OS versions.
  • Passive: Brightcove will test on these OS versions, but bug fixes will be handled on a case by case basis.

Generally, Brightcove provides active support for the versions of the OS that are used by 80% of the user base, and passive support for other versions used by at least 5% of the user base. Only the latest minor revision of a version is supported.

Android 7 support

The Brightcove Native SDK for Android now supports Android 7.

Early testing verifies that our Native SDK for Android now supports Android 7.0 SDK (API 24 Developer Preview 5). Using the Native SDK for Android along with the Android 7.0 SDK, we successfully compiled and tested our sample applications. These were then deployed to various devices for further verification.

Here are some of the test scenarios we used to qualify support on Android 7:

  • Brightcove Native SDK for Android: version 4.9
  • Test device: Nexus 6 and 6P with Android SDK 7 "angler"
  • Test applications: various sample apps
Java version Target Android SDK version
Java 8 7 (API 24)
Java 7 6 (API 23)

Connected TV / Set top boxes

The Native Player SDK for Android offers support for the following Android-based set top boxes:

  • Android TV
  • Fire TV (FireOS 5.0+ devices)

The set top box devices we tested with include:

  • Nexus Player
  • Nvidia Shield

The Brightcove Native SDK for Android sample apps will work on Android TV and Fire TV. This means your TV-based apps can include advertising, content protection (DRM), live playback, custom UI controls, Brightcove Analytics and QoE metrics.

Check out the Styled Controls sample app for details on styling the UI controls in your TV app.

Getting started

Before beginning development with the Android SDK there are a few concepts you should learn about:

  1. Media

    The current version of the Native Player SDK supports playing content from your Video Cloud account through the Playback API, or as remote assets with internet accessible URLs.

  2. Analytics

    With the Native Player SDK, Video Cloud customers automatically get robust analytics data reported in Video Cloud.

  3. Gradle

    Gradle is the foundation of the Android SDK build system, and is integrated with Android Studio.

  4. Maven repo

    The Brightcove Native Player for Android Maven artifacts (jar files) are now available in the Brightcove Maven Repo - http://repo.brightcove.com/releases

  5. Android SDK overview

    To aid in your understanding of the SDK, learn how critical components interact to handle the complexities of controlling the native video player.

  6. Build an app using the Native SDK for Android

    Create your first app with the Brightcove Player SDK for Android, which retrieves a video from your Video Cloud account and starts playback.

  7. SDKs developer forum

    Join us in the SDK developer forums where SDK related questions are answered by the community and Brightcove engineers. Currently a private group, you'll have to request access, providing details about the project you're working on to gain entry.

  8. Video-on-Demand training

    View a series of training videos that walk you through the steps of building an app in Android Studio that plays a video and a playlist from your Video Cloud library.

Download the SDK

Get the latest version of the Brightcove Native SDK for Android:

Package
(Github Repo)
Reference Documentation Notes Supported Framework Samples
SDK Native SDK for Android v4.13.2 SDK Reference Release Notes ExoPlayer v1.5.13 Sample Applications

or select this button:

To view the product updates for all of the Native SDKs and the associated plugins, see the Release Notes for the Brightcove Native SDKs document.

Core SDK installation

Installation of the core SDK is very straightforward.

  1. Simply download the SDK and unzip it. You will find the SDK archive file contains six other zip files.
  2. Unzip the android-sdk-4.x.x.zip file.
  3. From this archive add the android-sdk-4.x.x.aar file to your library, along with any plugin files that you may need.

Integrations

The following table contains links to get plugins integrated with your SDK implementation. The plugins can be downloaded from their respective Github Repos, and each repo contains a detailed README with instructions on how to setup the plugin.

The sample applications demonstrate the basic functionality of each plugin integrated with the SDK. These sample apps are a good way to learn about each plugin, and serve as a reference point when debugging.

Previous integation versions

Category Brightcove Plugin Reference Documentation Sample Apps Supported Partner/Vendor Plugin
Advertising FreeWheel plugin v4.13.2 [1] FreeWheel Reference Basic FreeWheel Sample FreeWheel AdManager library v6.10.0
FreeWheel with Widevine Modular Sample
IMA plugin v4.13.2 IMA Reference Basic IMA Sample Google IMA v3-3.1.3
Ad Rules with IMA Sample
Ad Rules with IMA and Widevine Sample
OnceUX plugin v4.13.2 OnceUX Reference Basic OnceUx Sample onceux-android-library 2.1.17
VMAP [2] VMAP Reference Basic VMAP Sample None
Analytics Omniture plugin v4.13.2 [3] Omniture Reference Basic Omniture Sample AdobeVideoLibrary 4.11.0

VideoHeartbeat 2.0.0
Chromecast Google Cast plugin v4.13.0 Cast Reference Basic Chromecast Sample CastCompanionLibrary- android:2.5.1
DRM Widevine Modular [4] Widevine Reference Widevine Modular Sample None. The Android framework supports Widevine Modular when using the ExoPlayer Video View.
Widevine Classic plugin v4.9.2 (deprecated) [4] [5] Widevine Reference Widevine Classic Sample android.drm package

Advertising

Here is additional information you may find helpful when working with the Advertising plugins.

IMA plugin

The placement of VAST ads is typically specified by a VMAP document. VAST describes an ad while VMAP describes the placement of ads in a video. For code details, see the BasicIMASampleApp.

When working with IMA ads, it is best practice to check that your ads work outside of the SDK before implementing them. The following links will be helpful for this:

Samples

The following table contains links to code samples that are in addition to the samples associated with the integrations in the previous section.

Brightcove recommends using the ExoPlayer implementation when possible. For a list of code samples using the ExoPlayer, see the collection of samples using the BrightcoveExoPlayerVideoView.

For a list of other code samples, see the collection of samples for the Brightcove Player SDK for Android.

Sample Application Description
Basic Sample Create a basic app that plays videos from your Video Cloud library.
Custom Controls Customize the player controls.
DVR Live Create an app that runs an HLS live stream.
Remote Video Load a video from a remote server.
360° Video Plays a 360° video, as long as the projection property is set. When the Video 360 button in the control bar is tapped, the video is displayed in VR Goggles mode with side-by-side images. For details, see the Using 360-Degree Videos with the Mobile SDKs document.

Solution guides

The following table contains links to developer docs which will help you get started with your own app using the Brightcove Player SDK, and guide you through some of the features and functionality available.

Guide Description
Brightcove Perform Setup Learn the basics of working with the Brightcove Player SDK for Android by walking you through the development of a simple video playback app using content from your own backend.
Brightcove Video Cloud Setup Learn the basics of working with the Brightcove Player SDK for Android by walking you through the development of a simple video playback app using the Brightcove Catalog service.
Creating Plugins Learn how to create a plugin for the Brightcove Player SDK for Android.
Managing View Layout Learn how to manage the layout of a View added to the BrightcoveVideoView.
Handling Orientation Changes Learn how to manage unwanted default behavior when the orientation changes.
Rendition Selection Learn about the default rendition selection process when playing a video.
Using Brightcove Analytics Learn how to set properties in Brightcove Analytics from your mobile app using the Brightcove SDK for Android.
Working with Player Controls Learn how to customize and hide player controls.