Überblick: Brightcove Natives SDK für Android

Willkommen bei der Android SDK-Entwicklerdokumentation. Hier finden Sie die Informationen, die Sie für die Entwicklung mit dem Android SDK benötigen.

Dokumentationsstruktur

Wir bei Brightcove bemühen uns, die Dokumentation strukturiert, sauber und intuitiv zu halten. Daher nutzen wir github READMEs für Details zu all unseren Plugins und Integrationen. Der Einfachheit halber haben wir diese Plugins unten aufgelistet und verlinkt.

Android-Unterstützung

Das Native SDK für Android bietet Unterstützung für die folgenden Versionen von Android:

Aktive Unterstützung

Brightcove bietet aktiven Support für das neueste Android SDK für die folgenden Android-Versionen:

  • 12,0
  • 11,0
  • 10.0
  • 9,0
  • 8.0, 8.1
  • 7.0, 7.1
  • 6.0

Passive Unterstützung

Brightcove bietet passiven Support für die folgenden Android-Versionen:

  • 5.0, 5.1

Unterstützungsstufen verstehen

Unterstützung wird definiert in Bezug auf die [Hauptversion].[Nebenversion] eines Betriebssystems (zum Beispiel: Android 8.1). Um von den neuesten Technologieverbesserungen von Google zu profitieren, bieten wir zwei Supportstufen an:

  • Aktiv: Brightcove testet und behebt Fehler in diesen Betriebssystemversionen.
  • Passiv: Brightcove wird diese Betriebssystemversionen testen, aber Fehlerkorrekturen werden von Fall zu Fall behandelt.

Im Allgemeinen bietet Brightcove aktiven Support für die Versionen des Betriebssystems, die von 80 % der Benutzerbasis verwendet werden, und passiven Support für andere Versionen, die von mindestens 5 % der Benutzerbasis verwendet werden.

Unterstützung der Android-Variante

Das Brightcove Native SDK für Android wurde für die Hauptversionen des Android-Betriebssystems entwickelt und mit diesen getestet. Brightcove unterstützt offiziell keine Aftermarket-Distributionen von Android, wie z. B. LineageOS.

Benutzer von Geräten, auf denen unterschiedliche Android-Versionen laufen, können Probleme mit Anwendungen haben, die mit dem Native SDK für Android entwickelt wurden.

Connected TV / Set-Top-Boxen

Das Native SDK für Android bietet Unterstützung für die folgenden Android-basierten Set-Top-Boxen:

  • Android-TV
  • Fire TV (FireOS 5.0+ Geräte)

Zu den Set-Top-Box-Geräten, mit denen wir getestet haben, gehören:

  • Nexus-Player
  • Nvidia-Schild

Die Brightcove Native SDK für Android-Beispiel-Apps funktioniert auf Android TV und Fire TV. Das bedeutet, dass Ihre TV-basierten Apps Werbung, Inhaltsschutz (DRM), Live-Wiedergabe, benutzerdefinierte UI-Steuerelemente, Brightcove Analytics und QoE-Metriken umfassen können.

Besuche die Beispiel-App für gestylte Steuerelemente Weitere Informationen zum Gestalten der UI-Steuerelemente in Ihrer TV-App.

Erste Schritte

Bevor Sie mit der Entwicklung mit dem Android SDK beginnen, sollten Sie sich mit einigen Konzepten vertraut machen:

  1. Medien

    Die aktuelle Version des nativen SDK unterstützt die Wiedergabe von Inhalten aus Ihrem Video Cloud-Konto über die Playback-API oder als Remote-Assets mit über das Internet zugänglichen URLs.

  2. Analytik

    Mit dem nativen SDK erhalten Video Cloud-Kunden automatisch zuverlässige Analysedaten, die in Video Cloud gemeldet werden.

  3. Gradle

    Gradle ist die Grundlage des Android SDK-Buildsystems und in Android Studio integriert.

  4. Maven-Repository

    Der Brightcove Native Player für Android Maven-Artefakte (JAR-Dateien) ist jetzt im Brightcove Maven Repo verfügbar - https://repo.brightcove.com/releases

  5. Android SDK-Übersicht

    Um das SDK besser zu verstehen, erfahren Sie, wie kritische Komponenten interagieren, um die Komplexität der Steuerung des nativen Videoplayers zu bewältigen.

  6. Erstellen Sie eine App mit dem Native SDK für Android

    Erstellen Sie Ihre erste App mit dem Brightcove Native SDK für Android, die ein Video von Ihrem eigenen Backend-System abspielt. Video Cloud-Kunden können zusätzlich ein Video vom Brightcove-Katalogdienst abrufen und wiedergeben.

  7. Video-on-Demand-Schulung

    Sehen Sie sich eine Reihe von Schulungsvideos an, die Sie durch die Schritte zum Erstellen einer App in Android Studio führen, die ein Video und eine Playlist aus Ihrer Video Cloud-Bibliothek abspielt.

  8. Mailingliste

    Treten Sie der Brightcove Native SDKs-Mailingliste bei, um über die Veröffentlichung der Native SDKs informiert zu werden.

Laden Sie das SDK herunter

Holen Sie sich die neueste Version des Brightcove Native SDK für Android:

  Paket
(Github Repo)
Referenzdokumentation Hinweise Unterstütztes Framework Proben
SDK Natives SDK für Android v8.0.0 SDK-Referenz Versions-Hinweise ExoPlayer 2.17.1 Beispielanwendungen

oder wählen Sie diese Schaltfläche:

Um die Produktaktualisierungen für alle Native SDKs und die zugehörigen Plugins anzuzeigen, lesen Sie die Versionshinweise für die Brightcove Native SDKs dokumentieren.

Hinweise

Die folgenden Hinweise beziehen sich auf die neueste Version des Native SDK:

  • Ab Version 6.10.0 verwendet das Native SDK von Brightcove für Android die Jetpack-Bibliotheken (androidx.*) anstelle der ursprünglichen Supportbibliotheken. Diese Änderung ist für Exoplayer-Version 2.10.0 und höher erforderlich. Um Jetpack verwenden zu können, müssen Ihre Apps die folgenden Anforderungen erfüllen:

    • Migration zu Jetpack (AndroidX) Abhängigkeiten
    • Android Gradle-Tools 3.2.0
    • Gradle-Version 4.6

    Weitere Informationen zur Migration zu JetPack finden Sie im offiziellen Anleitung zur Android-Migration.

  • Die vom Brightcove Native SDK für Android unterstützte Android Minimum SDK-Version ist jetzt 19.
  • Für ExoPlayer v2.17.1 müssen Sie die Unterstützung von Java 11 aktivieren. Fügen Sie dazu dem Abschnitt android in der build.gradle-Datei Ihrer Anwendung Folgendes hinzu. Einzelheiten finden Sie unter ExoPlayer von Android dokumentieren.
    android {
        compileOptions {
          targetCompatibility JavaVersion.VERSION_11
        }
      }

    Dies überschreibt die Standard-Java-Version basierend auf dem Projekt compileSdkVersion Wert.

Core-SDK-Installation

Die Installation des Brightcove-Core-SDK ist sehr einfach. Dazu gibt es zwei Möglichkeiten:

Verwenden des Gradle-Build-Systems

Die einfachste Möglichkeit, das Brightcove SDK und seine Abhängigkeiten hinzuzufügen, besteht darin, das Gradle-Buildsystem in Android Studio zu verwenden.

In der Gradle-Community wird davon abgeraten, eine dynamische Abhängigkeitsversion mit dem Zeichen '+' zu verwenden. Die Verwendung der dynamischen Versionsverwaltung birgt ein erhebliches Risiko für Ihren Build-Prozess, da neuere APIs möglicherweise unerwartet mit dem Quellcode Ihrer App inkompatibel werden.

Weitere Informationen zur Verwendung von Gradle finden Sie unter Android's Build-Abhängigkeiten hinzufügen Dokumentation.

Manuelles Herunterladen des SDK

Sie können das Brightcove SDK auch wie folgt manuell herunterladen:

  1. Laden Sie einfach das SDK herunter und entpacken Sie es. Sie finden eine Reihe von Ordnern.
  2. Innerhalb der sdk Ordner finden Sie das Core SDK mit dem Namen android-sdk-xxxaar , wo xxx ist die neueste SDK-Versionsnummer.
  3. Ergänzen Sie die android-sdk-xxxaar Datei in Ihre Bibliothek, zusammen mit allen Plugin-Dateien, die Sie möglicherweise benötigen.

Integrationen

Die folgende Tabelle enthält Links, um Plug-ins in Ihre SDK-Implementierung zu integrieren. Die Plugins können von ihren jeweiligen Github-Repos heruntergeladen werden, und jedes Repository enthält eine detaillierte README mit Anweisungen zum Einrichten des Plugins.

Die Beispielanwendungen demonstrieren die grundlegende Funktionalität jedes Plugins, das in das SDK integriert ist. Diese Beispiel-Apps sind eine gute Möglichkeit, sich mit den einzelnen Plugins vertraut zu machen, und dienen als Referenzpunkt beim Debuggen.

Frühere Integrationsversionen

Kategorie Brightcove-Plug-in Referenz Dokumentation Beispiel-Apps Unterstütztes Partner-/Anbieter-Plug-in
Werbung Freilauf-Plugin 8.0.0 [1] FreeWheel-Referenz Basic FreeWheel-Beispiel FreeWheel AdManager-Bibliothek 6.28.0
    FreeWheel mit Widevine Modular Sample  
IMA-Plugin 8.0.0 [2] IMA-Referenz Anzeigenregeln mit IMA-Beispiel Google IMA 3.27.0
    Anzeigenregeln mit IMA- und Widevine-Beispiel  
    Grundlegendes IMA VAST-Beispiel  
Puls-Plugin 8.0.0 Pulsreferenz Pulsprobe Puls SDK 2.5.20.3.0
SSAI-Plugin 8.0.0 SSAI-Referenz Basis-SSAI-Beispiel Keine
Analytik Omniture-Plugin 8.0.0 [3] Omniture-Referenz AdobeVideoLibrary 4.11.0

VideoHeartbeat 2.0.0
Chromecast Cast-Plugin 8.0.0 Besetzungsreferenz Brightcove-Empfänger-Beispiel
Google Receiver-Beispiel
ExoPlayer Cast Extension 2.17.1

Plugins kombinieren

Mit dem Native SDK für Android lassen sich die meisten Plugins kombinieren. Dies Beispiel-App zeigt Ihnen, wie Sie den Brightcove ExoPlayer mit Google IMA-Anzeigen und Inhaltsschutz mit Widevine Modular verwenden.

Proben

Brightcove empfiehlt die Verwendung der BrightcoveExoPlayerVideoView Umsetzung, wenn möglich. Beispiele und Codeausschnitte finden Sie unter:

Die folgende Tabelle enthält Links zu Codebeispielen, die zusätzlich zu den Beispielen für die Integrationen im vorherigen Abschnitt vorhanden sind.

Beispielanwendung Beschreibung
Basisbeispiel Erstellen Sie eine einfache App, die Videos aus Ihrer Video Cloud-Bibliothek abspielt.
Chromecast Übertragen Sie Ihre Videos auf einen mit Chromecast verbundenen Fernseher. Eine Übersicht finden Sie im Das Cast-Plugin für das Native SDK für Android dokumentieren.
Benutzerdefinierte Steuerelemente Passen Sie die Player-Steuerelemente an.
DRM mit Widevine Schützen Sie Ihre Inhalte mit Widevine. Das Android-Framework unterstützt Widevine Modular bei Verwendung der ExoPlayer-Videoansicht. Einzelheiten finden Sie im Widevine-Referenz.
Liveübertragung Erstellen Sie eine App, die einen HLS-Livestream ausführt.
Offline-Wiedergabe Laden Sie DASH-Videos herunter und spielen Sie sie ab, einschließlich solcher, die mit Widevine-Verschlüsselung geschützt sind. Eine Übersicht finden Sie im Offline-Wiedergabe mit den nativen SDKs dokumentieren.
Remote-Video Laden Sie ein Video von einem Remote-Server.
Videoliste Benutze einen RecyclerView um eine Reihe von Videos zu bearbeiten.
360°-Video Spielt ein 360°-Video ab, solange die Projektionseigenschaft eingestellt ist. Wenn die Video 360-Schaltfläche in der Steuerleiste angetippt wird, wird das Video im VR-Goggles-Modus mit nebeneinander liegenden Bildern angezeigt. Einzelheiten finden Sie im 360°-Videos mit den Mobile SDKs verwenden dokumentieren.

Lösungsleitfäden

Die folgende Tabelle enthält Links zu Entwicklerdokumenten, die Ihnen den Einstieg in Ihre eigene App mit dem Brightcove Native SDK erleichtern und Sie durch einige der verfügbaren Features und Funktionen führen.

Handbuch Beschreibung
Einrichtung des nativen Brightcove-SDK für Android Lernen Sie die Grundlagen der Arbeit mit dem Brightcove Native SDK für Android kennen, indem Sie durch die Entwicklung einer einfachen Videowiedergabe-App mit Content aus Ihrem eigenen Backend-System geführt werden.

Video Cloud-Kunden rufen zusätzlich ein Video vom Brightcove-Katalogdienst ab und spielen es ab.
Plugins erstellen Erfahren Sie, wie Sie ein Plugin für das Brightcove Native SDK für Android erstellen.
Ansichtslayout verwalten Erfahren Sie, wie Sie das Layout einer Ansicht verwalten, die dem hinzugefügt wurde BrightcoveVideoView .
Handhabung von Ausrichtungsänderungen Erfahren Sie, wie Sie unerwünschtes Standardverhalten verwalten, wenn sich die Ausrichtung ändert.
IAB Offene Messung Erfahren Sie, wie Sie das Open Measurement SDK mit dem IMA-Plug-in verwenden, um Tools von Drittanbietern für die Anzeigenmessung und -überprüfung zu unterstützen.
Quellenauswahl Erfahren Sie mehr über den standardmäßigen Wiedergabeauswahlprozess beim Abspielen eines Videos.
Verwenden von Brightcove Analytics Erfahren Sie, wie Sie Eigenschaften in Brightcove Analytics über Ihre mobile App mit dem Brightcove SDK für Android festlegen.
Arbeiten mit Player-Steuerelementen Erfahren Sie, wie Sie Player-Steuerelemente anpassen und ausblenden.

Empfohlene Vorgehensweise

Hier finden Sie zusätzliche Informationen, die bei der Arbeit mit dem Brightcove Native SDK hilfreich sein können.

Werbung mit IMA

Die Platzierung von VAST-Anzeigen wird normalerweise durch ein VMAP-Dokument festgelegt. VAST beschreibt eine Anzeige, während VMAP die Platzierung von Anzeigen in einem Video beschreibt. Codedetails finden Sie im Folgenden:

 

Wenn Sie mit IMA-Anzeigen arbeiten, sollten Sie vor der Implementierung prüfen, ob Ihre Anzeigen außerhalb des SDK funktionieren. Folgende Links sind dabei hilfreich:

Companion-Anzeigen

Companion-Anzeigen und Click-through-Anzeigen werden auf Android TV nicht unterstützt. Da Android TV keine Webbrowser-Unterstützung bietet, gibt es kein Ziel für eine Klick-URL.

Arbeiten mit ProGuard

Verwenden von ProGuard ermöglicht es Ihnen, sicherere Apps zu erstellen, was das Reverse Engineering erschwert. ProGuard ist in das Android-Build-System integriert, sodass Sie es aktivieren oder ohne es erstellen können.

Wenn Sie eine Fehlermeldung erhalten, wenn ProGuard in Gradle aktiviert ist, versuchen Sie, die folgenden Ausschlussregeln hinzuzufügen:

  -dontwarn com.google.**
  -dontwarn android.media.**
  -keep class android.media.** { *; }
  -keep class com.google.** { *; }
  -keep interface com.google.** { *; }
  -keep class com.google.ads.interactivemedia.** { *; }
  -keep interface com.google.ads.interactivemedia.** { *; }
  
  

Um eine vollständige Liste der ProGuard-Regeln zu erhalten, die vom Brightcove Native SDK verwendet werden, laden Sie die aktuelles Native SDK für Android. Öffne das sdk Ordner und sehen Sie sich die proguard.txt Datei.

Wiedergabeverhalten

Auf bestimmten Android-Geräten stellen Sie möglicherweise einige der folgenden Wiedergabeverhalten fest:

Videopause

Androids Intelligente Pause Funktion auf Samsung-Geräten hält ein Video an, wenn der Benutzer vom Gerätebildschirm wegschaut. Sie können diese Funktion deaktivieren, wenn Sie nicht möchten, dass Videos auf Smart Pause-fähigen Geräten angehalten werden.