Überblick
Das Brightcove Native SDK für Android ist in einer neuen Hauptversion verfügbar, die wichtige Änderungen an der Architektur und Verbesserungen bei der Wiedergabe bietet, darunter:
- Kompatibilität mit Android 13
- Unterstützung für reine Audio-Inhalte
- Benachrichtigung im Medienstil mit anpassbaren Wiedergabesteuerungen über den Benachrichtigungsschirm und den Sperrbildschirm
- Unterstützung eines fortlaufenden Vordergrunddienstes für die kontinuierliche Wiedergabe
- Verbessertes Laden von Wiedergabelisten und Vorpuffern von Medien für eine reibungslosere Endbenutzererfahrung
Reine Audio-Inhalte
Das Brightcove Native SDK für Android unterstützt die reine Audiowiedergabe und umfangreiche Wiedergabesteuerungen. Die Audiowiedergabe wird auch dann fortgesetzt, wenn die Host-Anwendung im Hintergrund läuft, so dass der Endbenutzer mehr Kontrolle über sein Hörerlebnis hat. Die Unterstützung für die Audiowiedergabe wurde in das aktuelle Native SDK für Android-APIs integriert, um Abwärtskompatibilität mit allen Brightcove-Features zu gewährleisten.
Einzelheiten zur Implementierung finden Sie im Dokument Audio Only with the Native SDKs .
SDK-Änderungen
Mit dieser Version des Native SDK für Android wurden die folgenden Klassen hinzugefügt, um die kontinuierliche Integration mit Hintergrundwiedergabe, ExoPlayer und Benachrichtigungen im Medienstil zu unterstützen:
MediaPlayback<Player>
BrightcoveNotification
MediaPlaybackService
MediaPlayback<Spieler>
Mit den Änderungen im Native SDK für Android Version 8.0.0 hat Brightcove die Geschäftslogik für die View
Wiedergabe von Anfang an entkoppelt Activity
. Diese Geschäftslogik ist jetzt in der neuen MediaPlayback
Klasse angekommen und ermöglicht es Medien, über den Activity
Lebenszyklus hinaus zu bestehen, indem sie eine verwenden ForegroundService
. Der Wiedergabestatus wird von der Benachrichtigung und der zugehörigen Ansicht gemeinsam genutzt (wenn sich die App im Vordergrund befindet).

Brightcove hat die Nutzung der internen Wiedergabelistenunterstützung von ExoPlayer erheblich verbessert. Zuvor wurde für jedes in das SDK geladene Medienelement eine neue Instanz des ExoPlayers erstellt.
Jetzt verbessert die Medienwiedergabe die Vorpufferung des MediaSource
für ExoPlayer. Dies verbessert die Leistung und verwendet ExoPlayer, Player.Listener
um wichtige Wiedergabezustände auszugeben.
Durch die Unterstützung für Vordergrund- und Hintergrundwiedergabe wird während des App-Erstellungsprozesses eine FOREGROUND_SERVICE
Berechtigung für Ihre AndroidManifest-Datei zusammengeführt. Diese Berechtigung ist eine Voraussetzung für SDK v8.0.0.
BrightcoveBenachrichtigung
Die Benutzer können mit Hilfe von Aktionsschaltflächen auf dem Benachrichtigungs- und Sperrbildschirm mit dem Player interagieren. Standardmäßig enthält die Benachrichtigung Schaltflächen für die Wiedergabe, die Pause, die nächste und die vorherige Aktion.
Sie können die Aktionsschaltflächen anpassen, indem Sie die Benachrichtigungsinstanz abrufen und eine festlegen config
.
BrightcoveExoPlayerVideoView player = findViewById(R.id.player_view);
PlaybackNotification.Config config = new PlaybackNotification.Config(this)
.setUsePlayPauseActions(true)
.setUseNextAction(false)
.setUsePreviousAction(false)
.setUseFastForwardAction(true)
.setUseRewindAction(true);
player.getPlayback().getNotification().setConfig(config);
Die folgende Tabelle zeigt die Standardwerte und Beschreibungen der Aktionsschaltflächen:
Name der Methode | Standardwert | Beschreibung |
---|---|---|
usePlayPauseActions |
True |
Legt fest, ob die Aktionen "Abspielen" und "Pause" verwendet werden |
useRewindAction |
True |
Legt fest, ob die Rückspulaktion verwendet wird |
useRewindActionInCompatView |
False |
Falls useRewindAction wahr, legt fest, ob die Rückspulaktion auch in der Kompaktansicht verwendet wird (einschließlich der Sperrbildschirm-Benachrichtigung); bei Else wird nichts getan |
useFastForwardAction |
True |
Legt fest, ob der schnelle Vorlauf verwendet werden soll |
useFastForwardActionInCompactView |
False |
Falls useFastForwardAction wahr, legt fest, ob die Schnellvorlauf-Aktion auch in der Kompaktansicht verwendet wird (einschließlich der Benachrichtigung auf dem Sperrbildschirm); Else macht nichts |
usePreviousAction |
True |
Ob die vorherige Aktion verwendet wird |
usePrevioiusActionInCompatMode |
False |
Wenn usePreviousAction wahr, legt fest, ob die vorherige Aktion auch in der Kompaktansicht verwendet wird (einschließlich der Sperrbildschirm-Benachrichtigung); Else macht nichts |
useNextAction |
True |
Ob die nächste Aktion verwendet wird |
useNextActionInCompactView |
False |
Wenn useNextAction wahr, legt fest, ob die nächste Aktion auch in der Kompaktansicht verwendet wird (einschließlich der Sperrbildschirm-Benachrichtigung); Else macht nichts |
useStopAction |
False |
Legt fest, ob die Stopp-Aktion verwendet wird |
Metadaten der Benachrichtigung
Standardmäßig verwendet die Benachrichtigung die Metadaten des Assets und erstellt ein implizites Element, PendingIntent
um Ihre Aktivität erneut zu erstellen. Wenn Sie weitere Kontrolle über die in der Benachrichtigung angezeigten Metadaten benötigen, können Sie Folgendes implementieren MediaDescriptionAdapter
:
new PlaybackNotification.Config(this)
.setAdapter(new PlaybackNotification.MediaDescriptionAdapter() {
@Override
public CharSequence getCurrentContentTitle(
MediaPlayback playback
) {
// TODO: return the current content title
}
@Override
public Bitmap getCurrentLargeIcon(
MediaPlayback playback,
BitmapCallback callback
) {
// TODO: return the bitmap for currently playing item
}
@Nullable
@Override
public PendingIntent createCurrentContentIntent(
MediaPlayback<?> playback
) {
// TODO: return your custom PendingIntent
}
@Nullable
@Override
public CharSequence getCurrentContentText(
MediaPlayback<?> playback
) {
// TODO: return the current content text
}
@Nullable
@Override
public CharSequence getCurrentSubText(
MediaPlayback<?> playback
) {
// TODO: return the current sub-text.
}
}
);
MediaPlaybackService
Das Native SDK für Android unterstützt Benachrichtigungen für die Medienwiedergabe. Das Standardverhalten des Players bei der Wiedergabe eines Audio-Assets besteht darin, einen neuen ForegroundService mit einer Benachrichtigung über die laufende Wiedergabe mit Mediensteuerungen zu starten. Die Mediensteuerung wird unterhalb der Schnelleinstellungen und auf dem Sperrbildschirm angezeigt:
Die Mediensteuerung befindet sich auf dem Sperrbildschirm und unter den Schnelleinstellungen:

Mit der Benachrichtigung können Benutzer die Wiedergabe anzeigen und steuern, wenn die Host-Anwendung im Hintergrund läuft. Das Native SDK übernimmt dies automatisch:
- Laden von Album-Cover und Metadaten
- Aktionstasten (Abspielen/Pause, Weiter, Zurück, Vorspulen und Stopp)
- Ereignisse im Lebenszyklus einer Aktivität
Sie können den Benachrichtigungsstil und die Mediensteuerung mithilfe der PlaybackNotification.Config
Klasse anpassen.