Android: Verstehen der BrightcovePlayer-Klasse

In diesem Thema lernen Sie die Klasse BrightcovePlayer kennen und erfahren, wie sie eine grundlegende Lebenszyklusverwaltung bietet.

BrightcovePlayer-Klasse

Die BrightcovePlayer -Klasse befindet sich im Kern des Brightcove SDK für Android und erweitert Androids Aktivität Klasse.

Als Basis Activity , das BrightcovePlayer Klasse Wraps a BrightcoveExoPlayerVideoView und richtet ein EventLogger und Standard MediaController. Es implementiert grundlegendes Lebenszyklusmanagement und Vollbildlogik. Es soll untergeordnet werden.

public class MainActivity extends BrightcovePlayer {
...
}

Mindestens die onCreate() -Methode sollte mit Logik überschrieben werden, um die BrightcoveExoPlayerVideoView variabel zum layout.xml Datei. Zum Beispiel:

brightcoveVideoView = (BrightcoveExoPlayerVideoView) findViewById(R.id.brightcove_video_view);

Einzelheiten zur Implementierung finden Sie in der BasicSampleApp Code-Beispiel.

Bibliothekskomponenten unterstützen

Wenn Sie sich entscheiden, die nicht zu verwenden BrightcovePlayer Klasse, die BrightcovePlayerActivity und BrightcovePlayerFragment Klassen stehen Ihnen zur Verfügung. Um eine dieser Klassen zu verwenden, müssen Sie die appcompat Plugin in deinem build.gradle Datei wie folgt:

implementation "com.brightcove.player:android-appcompat-plugin:${anpVersion}"

BrightcovePlayerFragment-Klasse

Die BrightcovePlayerFragment Klasse erweitert die android.support.v4.app.Fragment Klasse.

Wenn Sie den Brightcove Player mit anderen Designelementen in Ihrem Layout kombinieren möchten, können Sie die BrightcovePlayerFragment Klasse. Dies ist nützlich, wenn Sie ein Tablet oder einen größeren Bildschirm entwerfen, der mehr Platz zum Kombinieren von UI-Komponenten bietet. Mit einem Tablet könnten Sie beispielsweise mehrere Fragmente gleichzeitig anzeigen, die beide innerhalb derselben Aktivität leben.

public class MainFragment extends BrightcovePlayerFragment {
...
}

Die onCreateView() sollte erweitert werden, um das Layout des Fragments mit dem baseVideoView Instanzvariable vor Aufruf super.onCreateView().

baseVideoView = (BaseVideoView) result.findViewById(R.id.brightcove_video_view);

Einzelheiten zur Implementierung finden Sie in der AppCompatFragmentSampleApp Code-Beispiel.

BrightcovePlayerActivity-Klasse

Die BrightcovePlayer-Aktivität Klasse erweitert die android.support.v7.app.AppCompatActivity Klasse.

Wenn Sie sich für eine Aktivität entscheiden, können Sie die BrightcovePlayerActivity Klasse.

public class MainActivity extends BrightcovePlayerActivity {
...
}

Einzelheiten zur Implementierung finden Sie in der AppCompatActivitySampleApp Code-Beispiel.

Lebenszyklusverwaltung

Es ist am besten, mit einem der beiden zu beginnen BrightcovePlayer Aktivität oder die BrightcovePlayerFragment , da diese eine standardmäßige Implementierung des Lebenszyklusmanagements bereitstellen, einschließlich der folgenden:

  • Wenn ein Benutzer die App pausiert, verfolgt die Klasse, wo er aufgehört hat.
  • Wenn Ihre App aus dem Hintergrund zurückkehrt, merkt sich die Klasse, ob das Video abgespielt wurde oder nicht, und startet die Wiedergabe dort neu, wo sie unterbrochen wurde.
  • Wenn Ihre App aufgrund von Speicherproblemen beendet wird, versucht die Klasse, die Zeit im Video dorthin zu verschieben, wo sie war.
  • Es wird ein Event-Logger eingerichtet, der alle Ereignisse in logcat protokolliert. Dies kann beim Debuggen hilfreich sein.
  • Die Klasse löst Ereignisse aus, um mit Plugins zu kommunizieren.
 

Nachdem Sie nun eine Aktivität erstellt haben, können Sie eine Videoansicht auswählen, wie im nächsten Dokument beschrieben.