Natives Brightcove-SDK für Android Versionshinweise

In diesem Thema finden Sie die neuesten Informationen zu Änderungen und Erweiterungen des Brightcove Native SDK für Android.

Tragen Sie sich in die Mailingliste ein, um Ankündigungen für die Native SDKs zu erhalten:

Aktuelle Version

Version 8.0.0

11. Januar 2023

Diese Hauptversion des Brightcove Native SDK für Android enthält wichtige Änderungen im Verhalten. Weitere Informationen finden Sie im Dokument The Native SDK for Android Release 8.0.0 .

SDK-Änderungen:

  • Mit dieser Version des Brightcove Native SDK für Android wird die Vorder- und Hintergrundwiedergabe von reinem Audio-Content unterstützt.
  • Die MediaPlayback Schnittstelle abstrahiert die Wiedergabe von der VideoView, um die kontinuierliche Wiedergabe von reinen Audiomedien zu unterstützen. Der MediaPlayback kommuniziert den Wiedergabestatus an die Benachrichtigung und die VideoView.
  • Unterstützung eines laufenden Vordergrunddienstes für die kontinuierliche Wiedergabe.
  • Verbessert das Laden von Wiedergabelisten und das Vorpuffern von Medien für eine reibungslosere Benutzererfahrung.

ExoPlayer-Änderungen:

  • Es wurde eine Benachrichtigung im Medienstil mit anpassbaren Wiedergabesteuerungen über den Benachrichtigungsschatten und den Sperrbildschirm hinzugefügt. Diese BrightcoveNotification Klasse verbindet die Wiedergabe mit einem Vordergrunddienst.

Vorherige Veröffentlichungen

Version 7.1.4

16. November 2022

Änderungen am Cast-Plugin:

  • Fügt Unterstützung für das Brightcove Cast CustomData Receiver-Objekt EmeHeaders hinzu.

Version 7.1.3

27. Oktober 2022

SDK-Änderungen:

  • Behebt ein Problem, bei dem bei einigen Abfragen von Playback-Analytics-Metriken kein video_duration Anforderungsparameter enthalten war.
  • Behebt ein Problem mit der Unterstützung von Live HLSe mit License Keys Protection.

Version 7.1.2

30. September 2022

SDK-Änderungen:

  • Unterstützung für Dolby Atmos-Audio wurde hinzugefügt. Da nicht alle Android-Geräte die Wiedergabe in diesem Format unterstützen, wird empfohlen, die Inhalte so zu transkodieren, dass sowohl Stereo- als auch Dolby Atmos-Audio-Varianten erzeugt werden. Weitere Informationen finden Sie im Dokument Dolby Atmos Audio .

ExoPlayer-Änderungen:

  • Unterstützung für Dub- und Description-DASH-Rollenwerte wurde hinzugefügt.

Version 7.1.1

1. September 2022

SDK-Änderungen:

  • Behebung eines Leistungsproblems, das beim Laden größerer Untertitel auftreten konnte.

ExoPlayer-Änderungen:

  • Fügt Setter- und Getter-Methoden für die allowChunklessPreparation Eigenschaft von ExoPlayer hinzu HLSMediaSource.Factory. Mit Exoplayer 2.17.0 wurde der Standardwert dieser Eigenschaft von false auf geändert true, was den unbeabsichtigten Nebeneffekt hatte, dass die Anzeige von 608/708 Untertiteln deaktiviert wurde, wenn sie in HLS-Inhalten vorhanden waren. Wenn Ihr HLS-Inhalt 608/708 Untertitel enthält, verwenden Sie das ExoPlayerVideoDisplayComponents, setAllowHlsChunklessPreparation(false) um die HLS-Chunkless-Vorbereitung in ExoPlayers Chunkless-Vorbereitung zu deaktivieren HLSMediaSource.Factory, wodurch die Anzeige von 608/708 Untertiteln wiederhergestellt wird.

Version 7.1.0

22. August 2022

SDK-Änderungen:

  • Fügt Unterstützung für eine Verschlüsselungsquelleneigenschaft mit HLSe Live-Streams hinzu.
  • Verbessert die Antwortbehandlung für Generic Stream Concurrency-Verbindungen.
  • Behebt ein Problem, bei dem eine Nulldauer oder eine fehlende Dauer für ein in VideoCloud Studio erstelltes Remote-Live-Video zu einem führen würde VideoParserException.
  • Fügt einen Generic Stream Concurrency (GSC) EventType hinzu, GSC_HEARTBEAT_STOPPED.

ExoPlayer-Änderungen:

  • Stellt die Methoden Setter und Getter ExoPlayerVideoDisplayComponent für die bereit DefaultRenderersFactory.
  • In der TrackSelectorHelper Klasse applySelectionOverride(int, SelectionOverrideCreator) ist veraltet. Bitte verwenden Sie applyTrackSelectionOverrides(int, TrackSelectionOverrideCreator) stattdessen.
  • Behebt die Callbacks zum Abrufen von Metadaten der Medien während der Wiedergabe.

Änderungen am SSAI-Plugin:

  • Diese Version des nativen Brightcove-SDK für Android ist die letzte Version, in der die Brightcove IAB Android-Bibliothek als externe Abhängigkeit verwendet wird. Zukünftige SDK-Versionen werden die IAB Android Library als Integration in das SSAI-Plugin enthalten.
  • Behebt ein Parsing-Problem bei BrightcoveDebug Elementen mit sich selbst schließenden Tags.
  • Mit dieser Version wird Live DRM mit SSAI unterstützt.

Version 7.0.1

6. Juli 2022

SDK-Änderungen:

  • Mit dieser Version des nativen Brightcove-SDK für Android wird MediaPlayer nicht mehr für die Contentwiedergabe unterstützt.
  • Das Brightcove Native SDK für Android ist jetzt mit Android 12 kompatibel.
  • Das Brightcove Native SDK für Android unterstützt jetzt die Wiedergabe von HLS-Livestreams mit niedriger Latenz.

ExoPlayer-Änderungen:

Das Brightcove Native Player SDK für Android unterstützt jetzt ExoPlayer 2.17.1. Bitte beachten Sie die folgenden Änderungen, die mit diesem Upgrade einhergehen:

  • Diese Version von ExoPlayer benötigt Java 11 und Gradle 7.4.
  • Die DRMSession <T erweitert die ExoMediaCrypto></T > Schnittstelle und benötigt keinen Parameter mehr.
  • Der ExoPlayerDRMSessionManager <T erweitert die ExoMediaCrypto></T > Schnittstelle und benötigt keinen Parameter mehr.
  • In der Klasse TrackSelectorHelper wird die Methode updateTracksSelectionArray(@Nullable TrackSelectionArray trackSelections) veraltet und durch updateTracksGroupInfos(@Nullable ImmutableList <TracksInfo.TrackGroupInfo> trackGroupInfos) ersetzt.
  • In der Klasse MediaSourceUtil ist die Methode findRenditionUrl(@NonNull HlsMasterPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format) veraltet und wird durch findRenditionUrl(@NonNull HlsMultivariantPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format) ersetzt.
  • In der Klasse ExoAdPlayer erfordert der Konstruktor eine StyledPlayerView anstelle einer PlayerView.
  • Die Klasse DashAudioTrackSelector ist jetzt veraltet und wurde durch ExoPlayerVideoDisplayComponent*.setPeakBitrate(int)* ersetzt.
  • Die Klasse DashPeakBitRateTrackSelector ist jetzt veraltet und wurde durch ExoPlayerVideoDisplayComponent*.setPeakBitrate(int)* ersetzt.
  • Die HLSpeakBitrateTrackSelector-Klasse ist jetzt veraltet und wurde durch exoPlayerVideoDisplayComponent*.setPeakBitrate (int) * ersetzt.

Änderungen am Cast-Plugin:

  • ExoPlayer Cast Extension Unterstützung auf 2.17.1 aktualisiert
  • In der GoogleCastComponent-Klasse geben die Methoden loadItems (MediaQueueItem, int) und addItems (MediaQueueItem) jetzt void statt PendingResult remoteMediaClient.MediaChannelResult> zurück.

Behebt ein Problem beim Casting von Remote-DRM-Videos, bei dem der Cast-Sender ein unerwartetes CustomData-Feld an die Brightcove Cast-Empfänger-App sendete.

IMA-Plugin:

  • Die Google IMA SDK-Abhängigkeit wurde auf 3.27.0 aktualisiert. Dieses Upgrade beinhaltet Unterstützung für Android 12.

Puls-Plugin:

  • Pulse SDK-Unterstützung aktualisiert auf 2.5.20.3.0

Änderungen am SSAI-Plugin:

  • Die SSAIComponent unterstützt jetzt die Verwendung des Brightcove VideoCloud-VMAP-XML-Objekts selbst als Quelle. Um ein VideoCloud VMAP XML-Objekt als Quelle zu verwenden, rufen Sie processVideo(String vmapXmlString) in der SSAIComponent-Klasse auf.

Version 6.18.6

14. Juni 2022

SDK-Änderungen:

  • Behebt ein Threading-Problem in der Catalog Klasse, das zu der Anforderung in SDK-Version 6.18.5 führte, dass das nur über den Hauptthread des Players definiert und instanziiert werden Catalog muss. Ab Version 6.18.6 Catalog muss der immer noch innerhalb der Player Activity Klasse definiert werden, aber die Instanziierung kann von anderen Threads aus aufgerufen werden. Beispiele zur Definition und Instanziierung von finden Sie in den Brightcove Android SDK-Beispiel-Apps Catalog.
  • Aktualisiert die GSON-Abhängigkeitsversion von 2.8.5 auf 2.8.9 als Reaktion auf einen CVE-Bericht (CVE-2022-25647) über eine mögliche Sicherheitslücke in einigen Klassen, von denen keine vom Brightcove-SDK verwendet wird.

ExoPlayer-Änderungen:

  • Es wurde ein Problem behoben, bei dem ein Suchlauf in einem angehaltenen Player dazu führte, dass der Scrubber der Suchleiste seinen Fortschritt nicht aktualisierte, wenn die Wiedergabe fortgesetzt wurde.
  • Behebt ein Problem mit kurzen Manifest-TTLs, bei dem die DRM-Einstellung für mehrere Sitzungen nicht erneut angewendet wurde, als das Video nach timestamp Ablauf des Manifests aktualisiert wurde.

Version 6.18.5

27. Mai 2022

SDK-Änderungen:

  • Fügt Unterstützung für Short Manifest TTLs hinzu.
  • WICHTIG! Für die Verwendung dieser SDK-Version müssen der Katalog und die HttpRequestConfig Objekte im Hauptthread des Players (in seiner onCreate Methode) instanziiert werden. Beachten Sie, dass diese Objekte entweder global (was bevorzugt wird) oder in der onCreate Methode definiert werden können. Ein Beispiel für ein lokal definiertes und instanziiertes Objekt finden Sie in der BasicSsaiSampleApp , ein Beispiel für ein global definiertes und lokal instanziiertes Objekt in der VideoViewListSampleApp . Bitte beachten Sie auch, dass dies eine Anforderung ist, die unabhängig von der Verwendung der Funktion "Short Manifest TTLs" ist.

Änderungen am SSAI-Plugin:

  • Fügt Unterstützung für Short Manifest TTLs hinzu.

Version 6.18.4

20. Mai 2022

SDK-Änderungen:

  • Behebt ein Problem, bei dem ein Absturz auftreten konnte, wenn ein Konto, das nicht für Generic Stream Concurrency (GSC) konfiguriert ist, versuchte, Inhalte in einem Player abzuspielen, der für GSC konfiguriert ist.
  • Verbessert die GSC-Fehlerbehandlung in Fällen, in denen ungültige oder abgelaufene Token beim Versuch, Inhalte abzuspielen, verwendet werden könnten.

Version 6.18.3

6. Mai 2022

SDK-Änderungen:

  • Behebt ein Problem mit der Barrierefreiheit, bei dem, wenn die Suchleiste fokussiert ist, der prozentuale Videofortschritt ständig vom TalkBack System gelesen wird.
  • Behebt ein Problem mit der Barrierefreiheit, bei dem ein Doppeltippen auf die Videoansicht den Fokus auf die Suchleiste legte und einen unerwarteten Suchlauf im Video verursachte.

ExoPlayer-Änderungen:

  • ExoPlayerVideoDisplayComponent bietet jetzt eine Getter-Methode, die die aktuelle Instanz von zurückgibt WidevineMediaDrmCallback, oder eine leere Instanz, falls sie erstellt werden muss.

Änderungen am Thumbnail-Plugin:

  • Behebt ein Problem, bei dem Wiedergabelisten mit einer Mischung aus Video Cloud- und Remote-Videos dazu führten, dass bei der Auswahl eines Remote-Videos eine Miniaturansicht des zuletzt abgespielten Video Cloud-Videos angezeigt wurde.

Version 6.18.2

24. März 2022

SDK-Änderungen:

  • Es wurde ein Problem behoben, bei dem video_engagement Analytics-Ereignisse für Remote-VOD-Videos einen video_seconds_viewed Parameter anstelle des Parameters für die erwartete Reichweite haben konnten.
  • Die Listener für das Anklicken von Spielertasten bei der Verwendung von benutzerdefinierten Drawables wurden korrigiert.
  • Es wurde ein Problem behoben, bei dem ein NumberUtil.safeLongToInt Anruf abstürzen konnte, wenn die Eingabe zu groß war. Wenn die Eingabe nun nicht sicher konvertiert werden kann, kehrt die Methode Integer.MIN_VALUE mit einer erklärenden Meldung zurück.

ExoPlayer-Änderungen:

  • Ein Problem wurde behoben, bei dem bei gemischten Wiedergabelisten mit DRM- und Clear-Inhalten die Wiedergabe fehlschlug, wenn ein Clear-Video nach der Wiedergabe eines DRM-Videos geladen wurde.
  • Unterstützung für das Festlegen der multiSession Eigenschaft (erforderlich für die Schlüsselrotation) beim Erstellen des DefaultDrmSessionManager in ExoPlayer hinzugefügt.

Version 6.18.1

26. Januar 2022

ExoPlayer-Änderungen:

  • Es wurde eine Überprüfung hinzugefügt, um einen Absturz zu beheben, der auftreten kann, wenn die ExoPlayer-Instanz Null getCurrentManifest() wird und in der aufgerufen wird ExoPlayerVideoDisplayComponent.

Version 6.18.0

21. Dezember 2021

SDK-Änderungen:

  • WICHTIG! Die Unterstützung für ganzzahlige Datentypen in Player-, Inhalts- und Ereigniseigenschaften ist in den folgenden Bereichen der Inhalts- und Anzeigenwiedergabe veraltet:
    • Abspielkopfposition, für VOD- und Live-Wiedergabe
    • Videodauer

    Eine vollständige Liste der Felder und Methoden, die migriert werden, finden Sie in der Android: Unterstützendes Dokument zur Abspielposition und Videodauer.

Änderungen am SSAI-Plugin:

  • Mit dieser Version wurde das SSAI-Plugin überarbeitet, um die Wiedergabe und das Suchen von Anwendungsfällen besser zu unterstützen.
  • Behebt ein Problem, bei dem das Suchen in einem pausierten Player über Anzeigen die falschen Player-Steuerelemente laden konnte.

  • Eine vollständige Beschreibung der Änderungen auf Verhaltens- und API-Ebene für dieses Plugin finden Sie im Support-Dokument SSAI Plugin Changes with Android SDK v6.18.0 .

Version 6.17.3

10. Dezember 2021

SDK-Änderungen:

  • Behebt ein Generic Stream Concurrency (GSC)-Problem, bei dem die zweite Heartbeat-Anfrage 30 Sekunden später auf die erste Anfrage folgte, anstatt der für das Konto konfigurierten Frequenz.
  • Verbesserungen der GSC-Herzschlaganforderungsfunktionalität während Player-Aktivitäts-, Player-Fragment- und Bild-in-Bild-Lebenszyklusereignissen sowie Wiederholungsversuche bei fehlgeschlagenen Herzschlaganforderungen.

Version 6.17.2

19 Nov 2021

SDK-Änderungen:

  • Diese Version bietet Unterstützung für Generic Stream Concurrency (GSC). Weitere Informationen finden Sie auf den Brightcove-Support-Seiten.
  • Einschränkungen
    • Chromecast wird in dieser Version nicht unterstützt. Die Unterstützung für Chromecast wird in einer zukünftigen Version des SDKs enthalten sein.
  • Bekannte Probleme
    • Beim Senden von Anfragen an den GSC-Heartbeat-Dienst folgt die zweite Anfrage 30 Sekunden später als die erste, anstatt in der für das Konto festgelegten Frequenz. Dieses Problem tritt nur bei der zweiten Heartbeat-Anforderung auf, hat keine Auswirkungen auf die Wiedergabe und wird in einer zukünftigen Version des SDK behoben.

Version 6.17.1

14. Oktober 2021

ExoPlayer-Änderungen:

  • Es wurde ein Problem mit einer übermäßig ausführlichen Protokollierung von der behoben ExoPlayerVideoDisplayComponent

Version 6.17.0

8. Oktober 2021

SDK-Änderungen:

  • Das Brightcove Native SDK für Android unterstützt jetzt Android 11

ExoPlayer-Änderungen:

  • Das Brightcove Native SDK für Android unterstützt jetzt ExoPlayer 2.14.2. Bitte beachten Sie die folgenden Änderungen:

    • In der ExoPlayerVideoDisplayComponent Klasse ist die getBrightcoveDrmSession() : BrightcoveDrmSession Methode veraltet. Bitte verwenden Sie stattdessen ExoPlayerDrmSessionManager. See ExoPlayerVideoDisplayComponent:getExoPlayerDrmSessionManager(): ExoPlayerDrmSessionManage

    • In der ExoPlayerVideoDisplayComponent Klasse, in der InfoListener Unterklasse, onDecoderInitialized(AnalyticsListener.EventTime eventTime, int trackType, String decoderName,long initializationDurationMs) ist die Methode veraltet. Verwenden Sie stattdessen bitte onAudioDecoderInitialized(AnalyticsListener.EventTime eventTime, String decoderName, long initializationDurationMs) : void und/oder onVideoDecoderInitialized(AnalyticsListener.EventTime eventTime, String decoderName, long initializationDurationMs) : void

    • Der Konstruktor für die ExoPlayerDrmSessionManager Klasse ist veraltet. Verwenden Sie stattdessen die ExoPlayerDrmSessionManager.Builder

    • Der Konstruktor für die OfflineLicenseManager Klasse ist veraltet. Der verwendet OfflineLicenseManager jetzt das Builder-Muster. siehe OfflineLicenseManager.Builder

    • In der Klasse BrightcoveSegmentTemplate getSegmentCount(long periodDurationUs) ist die Methode veraltet. Bitte verwenden Sie stattdessen getSegmentCountLong(long periodDurationUs)

    • Diese ExoPlayer-Version erfordert, dass jede Instanz des ExoPlayers erstellt und im Hauptthread aufgerufen werden muss, sodass jeder Zugriff auf die ExoPlayerVideoDisplayComponent.getExoPlayer Methode oder der direkte Zugriff auf eine ExoPlayer-Methode ebenfalls im Hauptthread erfolgen muss. Version 6.16.6

Version 6.16.6

4. Oktober 2021

SDK-Änderungen:

  • Verbessert die video_seconds_viewed Messung von video_engagement Ereignissen, die an das Brightcove Analytics-Backend gesendet werden

ExoPlayer-Änderungen:

  • Behebt ein Problem, bei dem ein Gerät während der Anzeigenwiedergabe in den Ruhezustand gehen konnte

Version 6.16.5

23. August 2021

SDK-Änderungen:

  • Verbesserte Unterstützung für 608/708 Beschriftungen, die ein Sprachattribut haben
  • Ein DID_SET_VIDEO_STILL_ERROR Ereignis auslösen, wenn das Posterbild eines Videos nicht geladen werden kann

ExoPlayer-Änderungen:

  • Gibt ein AD_ERROR Fehlerereignis aus, wenn das Laden der Anzeige unterbrochen wird oder wenn der ExoadPlayer oder sein Kontext Null sind

Änderungen am Offline-Wiedergabe-Plugin:

  • Ein Problem wurde behoben, bei dem das Beenden der App im Hintergrund dazu führen konnte, dass Offline-Inhalte nicht abgespielt wurden

Version 6.16.4

4. August 2021

Änderungen bei der Offline-Wiedergabe:

  • Ein Problem wurde behoben, bei dem einige Bilddateien nicht erfolgreich heruntergeladen werden konnten

Version 6.16.3

1. Juli 2021

SDK-Änderungen:

  • Unterstützung für Forensic Watermarking. Weitere Informationen finden Sie im Dokument Forensic Watermarking with Native SDKs .
  • Die VideoUtils Klasse wurde aktualisiert, um eine Hilfsmethode zum Entfernen der Sidecar-Untertitelquellen aus dem Video-Objekt hinzuzufügen
  • Es wurde ein Problem behoben, bei dem der video_duration URL-Parameter nicht in Reporting-Anfragen an das Analytics-Backend von Brightcove enthalten war

Änderungen am Cast-Plugin:

  • Unterstützung für das Festlegen einer URL zu einem benutzerdefinierten Player für die Cast-Empfänger-App hinzugefügt. Weitere Informationen finden Sie in der Android SDK-Supportdokumentation.
  • Unterstützung für das Senden ausgewählter Untertitel- und Audiotrackinformationen an einen Cast-Empfänger hinzugefügt

Änderungen bei der Offline-Wiedergabe:

  • Unterstützung für das Festlegen von Eigenschaften in der AbstractOfflineCatalog Klasse hinzugefügt. Offline-Katalogeigenschaften können auf zwei Arten festgelegt werden:

    • Als eines Map<String, String> von Schlüssel/Wert-Paaren unter Verwendung der setProperties(Map<String, String>) Methode
    • Durch die getProperties().put(key, value) Methode
  • Unterstützung für das Erstellen von benutzerdefinierten Dateien NotificationChannels in der DownloadManager Klasse hinzugefügt. Weitere Informationen finden Sie in der Android SDK-Supportdokumentation.

Version 6.16.2

10. Mai 2021

SDK-Änderungen:

  • Es wurde ein Problem behoben, bei dem Texttracks mit dieser Art nicht analysiert oder angezeigt subtitles wurden
  • Es wurde ein Problem behoben, bei dem Texttracks, die das position Attribut mit dem zusätzlichen line-left line-right Oder-Attribut enthalten, nicht analysiert oder angezeigt wurden

ExoPlayer 2-Änderungen:

  • Es wurde ein Problem behoben, bei dem ein falscher Index verwendet werden konnte, um die aktuell ausgewählte Audiosprache zu erhalten

Änderungen des Omniture-Plugins:

  • Es wurde ein Problem behoben, bei dem der Herzschlag fortgesetzt wurde, nachdem der Spieler zerstört wurde

Änderungen am SSAI-Plugin:

  • Parsing-Unterstützung für verschachtelte VAST- und VMAP-Erweiterungselemente hinzugefügt

  • Parsing-Unterstützung für AdVerification VAST-Elemente hinzugefügt

Version 6.16.1

12. Januar 2021

SDK-Änderungen:

  • Verbesserte Video-Engagement-Berichte für SSAI-VOD-Videos.
  • Das DashWidevineAuthorizer Klasse ist veraltet. Bitte benutzen Sie die WidevineAuthorizer Klasse stattdessen.

Änderungen am IMA-Plug-in:

  • Das Google IMA SDK wurde auf Version 3.21.1 aktualisiert.
  • Verbesserte Unterstützung für überspringbare Anzeigen und Behebung eines Problems, bei dem überspringbare Anzeigen möglicherweise nicht sauber beendet werden und nach dem Fortsetzen der Inhaltswiedergabe möglicherweise Anzeigenaudio zu hören ist.
  • Es wurde ein Problem beim Festlegen von Mime-Typen für Anzeigen behoben, bei dem die vom Benutzer bereitgestellten Mime-Typen nicht vom Builder des Plugins festgelegt wurden.
  • Plugin-Builder-Komfortmethoden hinzugefügt für:
    • Festlegen von Ad-Mime-Typen in der AdsRenderingSettings Objekt - siehe Builder.setMimeTypes(List) : void
    • Festlegen des Zeitlimits für das Laden von Anzeigenvideos in der AdsRenderingSettings Objekt - siehe Builder.setLoadVideoTimeout(int) : void
    • Einstellen des Debug-Modus in der ImaSdkSettings Objekt - siehe Builder.setDebugMode(boolean) : void
  • Bitte beachten Sie:

    Diese Convenience-Methoden sind Mitgliedsmethoden in der AdsRenderingSettings und ImaSdkSettings Google IMA SDK-Objekte. Wenn diese Methoden direkt über den Builder aufgerufen werden, konfigurieren sie das AdsRenderingSettings und ImaSdkSettings Objekte, die standardmäßig im Builder erstellt werden.

    Wenn Sie sich entscheiden, benutzerdefinierte zu erstellen AdsRenderingSettings und ImaSdkSettings Google IMA SDK-Objekte zur Verwendung im IMA-Plugin können Sie die Methoden dieser Objekte direkt aufrufen:

    • AdsRenderingSettings.setMimeTypes(List) : void
    • AdsRenderingSettings.setLoadVideoTimeout(int) : void
    • ImaSdkSettings.setDebugMode(boolean) : void

Änderungen am SSAI-Plugin:

  • Unterstützung für Live-SSAI-Streams hinzugefügt, die als Remote-Videoobjekte erstellt werden.

Version 6.16.0

14. Okt 2020

Änderungen am Cast-Plugin:

  • Das Cast-Plug-in wurde neu gestaltet und unterstützt jetzt den Brightcove Cast Receiver v2.0.
  • Weitere Informationen und Codebeispiele finden Sie in der Brightcove Android Native SDK-Dokumentation und den Brightcove Android Native SDK-Beispiel-Apps.

Version 6.15.1

22.09.2020

SDK-Änderungen:

  • Das Brightcove Native SDK für Android unterstützt jetzt die Sprache Arabisch (RTL) in Player-Steuerelementen und UI-Bezeichnungen.

  • Bitte beachten Sie: Während Text in arabischer Sprache (RTL) unterstützt wird, werden derzeit nur Player-Steuerungslayouts von links nach rechts (LTR) unterstützt.

  • Es wurde ein Problem behoben, bei dem sicher video_view und video_engagement Analytics-Ereignisparameter können nicht-westliche arabische Ziffern für die folgenden Parameter enthalten:

    • :video_view
      • start_time_ms
      • load_time_ms
    • :video_engagement
      • range
      • video_seconds_viewed

Änderungen am Cast-Plugin:

  • Das Cast-Plug-in unterstützt jetzt arabischen Text (RTL) in Cast-Steuerelementen und UI-Beschriftungen.
  • Beachten Sie, dass die Unterstützung der arabischen Sprache nicht auf die Anzeigen (verstrichene Videodauer und -dauer) im erweiterten Cast-Controller ausgedehnt wird.

  • Die Anzeige dieser Komponenten wird von der Google Cast API gesteuert.

Änderungen am Offline-Wiedergabe-Plugin:

  • Das Offline-Wiedergabe-Plugin unterstützt jetzt arabischen Text (RTL) in UI-Labels.

Pulse-Plugin-Änderungen:

  • Das Pulse-Plug-in unterstützt jetzt arabischen Text (RTL) in Anzeigensteuerelementen und UI-Labels.

Änderungen am SSAI-Plugin:

  • Das SSAI-Plug-in unterstützt jetzt arabischen Text (RTL) in Anzeigensteuerelementen und UI-Labels.

Version 6.15.0

25. August 2020

SDK-Änderungen:

  • Zusätzliche Nullprüfung für Untertitel-URIs implementiert

ExoPlayer-Änderungen:

  • Regression im behoben ExoPlayerVideoDisplayComponent setPeakBitrate() Methode, bei der die angegebene Bitrate ignoriert und stattdessen die höchste Bitrate ausgewählt wird.

Änderungen am IMA-Plug-in:

  • Das Google IMA SDK wurde auf Version 3.19.4 aktualisiert. Einige der Änderungen umfassen:

    • SdkFactory.createAdDisplayContainer() ist veraltet
    • AdDisplayContainer.setPlayer(VideoAdPlayer) ist veraltet
    • AdDisplayContainer.setAdContainer(ViewGroup) ist veraltet
    • AdsRequest.setAdDisplayContainer(AdDisplayContainer) ist entfernt

      Eine vollständige Liste der Änderungen finden Sie im Versionsverlauf des Google IMA Android SDK.

  • Die GoogleIMAComponent verwendet jetzt einen Builder für seine Konstruktion.
  • Das IMA-Plugin erstellt automatisch die AdDisplayContainer Verwendung der BrightcoveVideoView standardmäßig.

    Sie können eine AdDisplayContainerFactory zum GoogleIMAComponent.Builder um deine eigenen bereitzustellen AdDisplayContainer.

  • Die folgenden Methoden wurden in der GoogleIMAVideoAdPlayer Klasse:
    • playAd(). Use playAd(AdMediaInfo) stattdessen
    • loadAd(String). Use loadAd(AdMediaInfo, AdPodInfo) stattdessen
    • stopAd(). Use stopAd(AdMediaInfo) stattdessen
    • resumeAd(). Use playAd(AdMediaInfo) stattdessen
    • pauseAd(). Use pauseAd(AdMediaInfo) stattdessen

  • Es wurde ein Problem behoben, bei dem das IMA-Plugin die AD_PAUSED/AD_RESUME Ereignisse beim Anrufen GoogleIMAVideoAdPlayer.pauseAd und GoogleIMAVideoAdPlayer.resumeAd , bzw.

    Weitere Informationen finden Sie in der Brightcove Android SDK-Übersicht auf der Brightcove-Support-Website.

Änderungen am VMAP-Plugin:

  • Das veraltete VMAP-Plug-in wurde aus dem Brightcove Native SDK für Android entfernt. Für die VMAP-Anzeigenlieferung verwenden Sie bitte weiterhin das IMA-Plug-in.

Änderungen des OnceUx-Plugins:

  • Das veraltete OnceUx-Plug-in wurde aus dem Brightcove Native SDK für Android entfernt. Bitte verwenden Sie stattdessen das SSAI-Plugin.

Version 6.14.1

7. August 2020

Änderungen am SSAI-Plugin:

  • Behebt ein Problem, bei dem die CustomClick -Element würde nicht geparst.

  • Behebt ein Problem beim Parsen des VAST-Erweiterungselements.

Version 6.14.0

8. Juli 2020

SDK-Änderungen:

  • Verbesserte Integration mit Android TalkBack (und Samsung Voice Assistant).

  • Die VideoParser ignoriert nun alle DRM-Quellen, die keine Widevine-Schlüsselsysteme enthalten.

  • Es wurde ein Problem behoben, bei dem die VideoParser würde eine Thumbnail-VTT-Quelle, die die Bandbreiteneigenschaft nicht enthält, nicht parsen.

  • Es wurde ein Problem auf Android TV-Plattformen behoben, bei dem die Schaltfläche für die Player-Optionen nicht angezeigt wurde, nachdem die Werbeunterbrechungen für die serverseitige Anzeigeneinfügung abgeschlossen waren.

Änderungen am IMA-Plug-in:

  • ExoPlayer wird jetzt anstelle von MediaPlayer für die Anzeigenwiedergabe verwendet.

Version 6.13.3

21. Mai 2020

SDK-Änderungen:

  • Verbesserte Darstellung von Ruby-Text in geschlossenen Untertiteln im Sidecar. Eine ähnliche Verbesserung für In-Manifest-Untertitel ist in Vorbereitung.

Änderungen am Cast-Plugin:

  • Es wurde ein Problem behoben, bei dem die Aktivität nicht wie erwartet freigegeben wurde, wenn das Chromecast-Plugin verwendet wurde.

Änderungen am IMA-Plug-in:

  • Unterstützung für Zielgruppensegment-(Anzeigen-)Targeting hinzugefügt, wobei dem cust_params-Parameter der Anzeigen-Tag-URL Schlüssel/Wert-Paare hinzugefügt werden.

Änderungen am SSAI-Plugin:

  • Unterstützung für Zielgruppensegment-(Anzeigen-)Targeting hinzugefügt, wobei Schlüssel/Wert-Paare zur VMAP-Quell-URL hinzugefügt werden.

  • Es wurde ein Problem behoben, bei dem eine leere oder falsch formatierte URL in einem VAST-Tracking-Element einen App-Absturz verursachen kann

Version 6.13.2

24. April 2020

Änderungen bei der Offline-Wiedergabe:

  • Die FileDownloader-Abhängigkeit wurde auf v1.7.7 aktualisiert

    Dieses Upgrade behebt ein Problem, bei dem das Herunterladen der App im Hintergrund unerwartet anhalten konnte.

Änderungen am Thumbnail-Plugin:

  • Ein Ausrichtungsproblem zwischen dem Scrubber und der Miniaturansicht auf Android TV wurde behoben

Version 6.13.1

16. Apr 2020

SDK-Änderungen:

  • Unterstützung für HEVC-Videos hinzugefügt.

    Auf Geräten, die HEVC unterstützen (mit API-Level 21 und höher), ist die Wiedergabe von HEVC jetzt automatisch verfügbar. Technische Details siehe Dokumentation.

Pulse-Plugin-Änderungen:

  • Suche ohne Anzeigenunterstützung bei der Einstellung hinzugefügt adsDisabled An VideoPlaybackController

  • Unterstützung für das Abspielen von Pulse-Rücksendungsanzeigen hinzugefügt

  • Es wurde eine Nachricht hinzugefügt, um anzuzeigen, wenn sich der Benutzer in einer Pausenanzeige befindet

Änderungen am Thumbnail-Plugin:

  • Vergrößerte Größe des Miniaturbilds, das in Tablets angezeigt wird

  • Erhöhte Geschwindigkeit beim Ziehen von Miniaturansichten auf Android TV

Änderungen am SSAI-Plugin:

  • Es wurde ein Problem behoben, bei dem die Untertitel möglicherweise nicht mit dem Video synchron waren

Version 6.12.0

5. Mrz 2020

SDK-Änderungen:

  • Veraltet BrightcoveSurfaceView.isVideo360Supported(). Basierend auf den aktuell unterstützten Versionen wird immer true zurückgegeben.

Puls-Plugin:

  • Mit dieser Version implementiert das Brightcove Native SDK für Android das Pulse Advertising Plugin.

Version 6.11.0

7. Februar 2020

SDK-Änderungen:

  • Unterstützung für den Brightcove Playback Rights Management Service hinzugefügt.

  • Breaking Change: Das Playlist-Objekt ist jetzt unveränderlich.

  • Das Playlist-Objekt kann jetzt eine Mischung aus Videos mit Status enthalten Status.OK und Status.ERROR

  • :Playlist.getErrorVideos() Diese neue Methode gibt nur Videos mit dem Status zurück Status.ERROR

  • :Playlist.getAllVideosAndErrors() Diese neue Methode gibt alle Videos mit beiden Status zurück, Status.OK und Status.ERROR , in der gleichen Reihenfolge wie in der Antwort des Playback Rights Management Service

  • Notiz: Playlist.getVideos() und Playlist.getCount() verhalten sich genauso wie frühere Versionen, das heißt, sie berücksichtigen nur die Videos mit Status Status.OK

  • hinzugefügt ErrorListener.onError(List) zurückrufen.

  • Veraltet ErrorListener.onError(String) zurückrufen.

  • Das Video-Objekt hat jetzt einen Statuscode, der entweder Status.OK oder Status.ERROR. Sie können den Status abrufen über Video.getStatus():Status.

  • :Status.OK Das Video hat alle erwarteten Eigenschaften und hat nicht Video.Fields.ERRORS drin.

  • :Status.ERROR Das Video hat Video.Fields.ERRORS in seinen Eigenschaften in Form von List<CatalogError>.

VMAP-Plugin:

  • Das VMAP-Plugin ist veraltet. Für clientseitige Werbung mit VMAP- und VAST-Dokumenten verwenden Sie bitte das IMA-Plug-in.

Version 6.10.1

17. Januar 2020

ExoPlayer-Änderungen:

  • Ein Absturz beim Abspielen eines HLS-Live-Streams wurde behoben.

Änderungen bei der Offline-Wiedergabe:

  • Es wurde ein Problem behoben, bei dem einige VTT-Untertiteldateien nicht erfolgreich heruntergeladen wurden.

Cast-Plugin:

  • Neu hinzugefügt CastMediaUtil.toMediaInfo -Methoden ohne den unnötigen Android Context-Parameter.

  • Veraltet CastMediaUtil.toMediaInfo -Methoden mit dem unnötigen Android Context-Parameter.

Version 6.10.0

19 Dez 2019

SDK-Änderungen:

  • Breaking Change: Das Brightcove Android Native SDK wird jetzt mit AndroidX-Bibliotheken (JetPack) erstellt. Weitere Informationen zu dieser Änderung und den erforderlichen Schritten zum Migrieren Ihres Anwendungscodes finden Sie auf den Android SDK-Supportseiten.

  • Behebung eines Problems mit dem backgroundOpacity Methode in BrightcoveCaptionStyle wobei diese Methode die Hintergrundopazität für Untertitel nicht wie erwartet festlegte.

  • Es wurde ein Problem behoben, bei dem die Vollbildfunktionalität im nicht wie erwartet funktionierte BrightcovePlayerFragment.

ExoPlayer-Änderungen:

  • Die ExoPlayer-Unterstützung im Brightcove Android Native SDK wurde auf 2.10.8 aktualisiert.

  • Es wurde ein Problem bei der Audiospurauswahl behoben, bei dem Wiedergaben mit höherer Bitrate nach dem Wechseln der Sprache nicht ausgewählt werden konnten.

Änderungen am IMA-Plug-in:

  • Fügt Unterstützung für Live-Inhalte mit clientseitigen Pre-Roll-Anzeigen hinzu.

Änderungen am SSAI-Plugin:

  • Es wurde ein Problem behoben, bei dem die Schaltfläche „Untertitel“ während der Inhaltswiedergabe nicht durchgehend angezeigt wurde. Bitte beachten Sie, dass dieses Problem derzeit nur für Mobilgeräte behoben ist. eine Lösung für Android TV-Geräte wird in einer kommenden Version folgen.

Version 6.9.0

22. Okt 2019

SDK-Änderungen:

  • Das Android SDK zielt jetzt auf Android 10 (targetSdkVersion 29) ab und unterstützt es.

  • Behebt eine RunTimeException: "Leinwand: Versuch, eine recycelte Bitmap zu verwenden", wenn versucht wird, das Posterbild anzuzeigen.

  • Die folgenden Komfortkonstanten als HttpRequestConfig-Abfrageparameterschlüssel hinzugefügt:

    • HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID Wird verwendet, um eine Konfigurations-ID für Lieferregeln hinzuzufügen
    • HttpRequestConfig.KEY_AD_CONFIG_ID Wird verwendet, um eine SSAI-Anzeigenkonfigurations-ID hinzuzufügen

ExoPlayer v1-Änderungen:

  • Alle Unterstützung für ExoPlayer 1.x wurde aus dem Brightcove Native SDK für Android entfernt. Bitte stellen Sie sicher, dass Sie ExoPlayer v2 verwenden. Einzelheiten finden Sie im Migration zum ExoPlayer 2-Framework dokumentieren.

Änderungen am SSAI-Plugin:

  • Live- und Live-DVR-Streams mit serverseitiger Anzeigeneinfügung (Live-SSAI) werden jetzt unterstützt.

  • Breaking Change: Die Event.PLAYHEAD_POSITION Eigentum in beiden Veranstaltungen, EventType.PROGRESS und EventType.AD_PROGRESS , enthält jetzt die absolute Abspielposition, die dieselbe Abspielposition ist, die vom zugrunde liegenden Player angegeben wird.
    Bitte verwenden Sie Event.PROGRESS_BAR_PLAYHEAD_POSITION stattdessen, um die relative Abspielkopfposition zu erhalten.

  • Die Event.PROGRESS_BAR_PLAYHEAD_POSITION Eigenschaft wurde für beide eingeführt EventType.PROGRESS und EventType.AD_PROGRESS Events, die die relative Abspielposition enthalten (wie Event.PLAYHEAD_POSITION in älteren Versionen).

  • Anzeigensteuerung für Android TV hinzugefügt.

  • Es wurde ein Problem behoben, bei dem die Zurückspulen-Schaltfläche nach aufeinanderfolgenden Klicks nicht richtig zurückgespult wird.

Version 6.8.1

31. Mai 2019

ExoPlayer2-Änderungen:

  • ExoPlayer2 wurde aufgrund eines Problems mit HLS Multiple Audio Tracks in Version 2.9.6 auf Version 2.9.3 herabgestuft.

Änderungen bei der Offline-Wiedergabe:

  • Fügen Sie Unterstützung für den Wiedergabeauthentifizierungsdienst (PAS) hinzu.

  • Die folgenden Methoden werden dem . hinzugefügt com.brightcove.player.edge.AbstractOfflineCatalog:

    • findOfflineVideoById(String, @NonNull HttpRequestConfig): Video
    • findOfflineVideoById(String, @NonNull HttpRequestConfig, @NonNull OfflineCallback<Video>): void
    • requestPurchaseLicense(@NonNull Video, @NonNull EventListener, @NonNull HttpRequestConfig): void
    • requestRentalLicense(@NonNull Video, @NonNull Date, long, @NonNull EventListener, @NonNull HttpRequestConfig): void
  • Die folgende Methode wird aus der entfernt com.brightcove.player.edge.AbstractOfflineCatalog

    • renewLicense(@NonNull Video, @NonNull EventListener): void
  • Behebt ein Problem beim Laden von Posterbildern für heruntergeladene Videos. Wenn verfügbar, wird ein lokales Bild geladen.

FreeWheel-Plugin-Änderungen:

  • Fügt Unterstützung für Live-Inhalte mit clientseitigen Pre-Roll-Anzeigen hinzu

Änderungen am SSAI-Plugin:

  • Behebt ein Problem, bei dem eine Inhaltsquelle direkt aus dem geladen werden konnte src -Attribut in der Playback-API-Antwort, anstatt aus dem contenturi -Attribut in der VMAP.

Version 6.8.0

1. Mai 2019

SDK-Änderungen:

  • Die vom Brightcove Native SDK für Android unterstützte Android Minimum SDK-Version ist jetzt 19.

  • Das Brightcove Native SDK für Android ist jetzt Java 8-kompatibel. Bitte beachten Sie, dass Android-Apps, die mit dieser Version des Android SDK entwickelt wurden, möglicherweise die folgende Anweisung erfordern, die der Datei build.gradle hinzugefügt wird, um die Bytecode-Kompatibilität sicherzustellen:

    compileOptions{
    targetCompatibility JavaVersion.VERSION_1_8
    sourceCompatibility JavaVersion.VERSION_1_8
    }

ExoPlayer2-Änderungen:

  • ExoPlayer2 wurde auf Version 2.9.6 aktualisiert

  • Bitte beachten Sie, dass dieses Upgrade die folgenden API-Änderungen enthält:

  • Breaking Change ENTFERNT:constructor TrackSelectorHelper(@NonNull ExoPlayer player, @NonNull MappingTrackSelector trackSelector)

    Verwenden constructor TrackSelectorHelper(@NonNull ExoPlayer player, @NonNull DefaultTrackSelector trackSelector)

  • Breaking Change ENTFERNT: setTrackSelector(@NonNull MappingTrackSelector trackSelector)

    Verwenden setTrackSelector(@NonNull DefaultTrackSelector trackSelector)

  • ENTFERNT getTrackSelector(): MappingTrackSelector

    Verwenden getTrackSelector(): DefaultTrackSelector

FreeWheel-Plugin-Änderungen:

  • Das FreeWheel-Plugin wurde aktualisiert, um FreeWheel AdManager Version 6.28.0 zu unterstützen.

  • Bitte beachten Sie, dass FreeWheel die AdManager-Bibliothek jetzt als Android-Archiv (AAR) verpackt.

Änderungen am IMA-Plug-in:

  • Das IMA-Plug-in wurde aktualisiert, um die Google IMA SDK-Version 3.11.2 zu unterstützen.

  • Diese Version des Google IMA SDK unterstützt Open Measurement-Standards.

  • Bitte wende dich an die Dokumentation zum Brightcove Android SDK für mehr Informationen.

  • Es wurde ein Problem behoben, bei dem Mid-Roll-Anzeigen, die nach längerer Inhaltswiedergabe aufgerufen wurden, nicht abgespielt wurden.

Änderungen am SSAI-Plugin:

  • Das SSAI-Plug-in unterstützt jetzt die Inhaltsbereitstellung über den Brightcove Playback Authorization Service (PAS).

  • Bitte beachten Sie, dass PAS nur mit dem SSAI-Plugin funktioniert. PAS mit dem veralteten OnceUx-Plugin wird nicht unterstützt.

Version 6.7.0

5. April 2019

SSAI-Plugin:

  • Mit dieser Version implementiert das Brightcove Native SDK für Android das SSAI-Plug-in. Weitere Informationen zu diesem neuen Plug-in finden Sie in der Brightcove Android SDK-Übersicht auf der Brightcove-Support-Website.

Änderungen des OnceUx-Plugins:

  • Mit dieser Version ist das OnceUx-Plug-in veraltet. Bitte verwenden Sie stattdessen das neue SSAI-Plugin. Weitere Informationen finden Sie in der Brightcove Android SDK-Übersicht auf der Brightcove-Support-Website.

Version 6.6.0

29. März 2019

SDK-Änderungen:

  • Eine neue Klasse, HttpRequestConfig, wurde hinzugefügt. Diese Klasse unterstützt das Hinzufügen von Anforderungs-URL-Parametern und/oder Anforderungsheadern, die von Brightcove-Diensten (z. B. Brightcove Edge API oder Brightcove Playback Authorization Service (PAS)) benötigt werden. Weitere Informationen zur Verwendung dieser Klasse finden Sie in der Brightcove-Supportdokumentation.

  • Zusammen mit der HttpRequestConfig-Klasse werden der com.brightcove.player.edge.Catalog-Klasse die folgenden Methoden hinzugefügt: findPlaylistByID(String, HttpRequestConfig, PlaylistListener): void findPlaylistByReferenceID(String, HttpRequestConfig, PlaylistListener): void findVideoByID(String, Httt) VideoListener): void findVideoByReferenceID(String, HttpRequestConfig, VideoListener): void

  • Die folgenden findPlaylist-Methoden sind in com.brightcove.player.edge.Catalog veraltet: findPlaylistByID(String, Map<String, String>, PlaylistListener): void findPlaylistByID(String, Map<String, String>, Map<String, String>, PlaylistListener): void findPlaylistByReferenceID(String, Map<String, String>, PlaylistListener): void findPlaylistByReferenceID(String, Map<String, String>, Map<String, String>, PlaylistListener): void

  • Die folgenden findVideo-Methoden sind in com.brightcove.player.edge.Catalog veraltet: findVideoByID(String videoID, Map<String, String>, VideoListener): void findVideoByID(String videoID, Map<String, String>, Map<String, String >, VideoListener): void findVideoByReferenceID(String, Map<String, String>, VideoListener): void findVideoByReferenceID(String, Map<String, String>, Map<String, String>, VideoListener): void

Brightcove Native SDK für Android-Unterstützung für den Brightcove Playback Authorization Service (PAS)

  • In der Version mit eingeschränkter Verfügbarkeit des Brightcove Playback Authorization Service (PAS) werden die folgenden Funktionen vom Brightcove Native SDK für Android unterstützt:

    • Online-Streaming von DRM-Inhalten mit PAS

    • Online-Streaming von HLSe-Inhalten mit PAS

  • In der Version mit eingeschränkter Verfügbarkeit des Brightcove Playback Authorization Service (PAS) werden die folgenden Funktionen derzeit nicht vom Brightcove Native SDK für Android unterstützt und werden in einer kommenden Version implementiert:

    • Serverseitige Anzeigenschaltung mit dem OnceUx-Plugin mit PAS

    • Offline-Wiedergabe mit PAS

    • Chromecast mit PAS

  • Wichtiger Hinweis zu ExoPlayer 1:

    • ExoPlayer 1 ist veraltet und wird Ende des dritten Quartals 2019 end of Life sein. Ab diesem Zeitpunkt ist er nicht mehr im Brightcove Native SDK für Android verfügbar.

Version 6.5.1

12. Februar 2019

Änderungen des OnceUx-Plugins:

  • Es wurde ein Problem behoben, bei dem das IFrameResource-Element falsch von VMAP-Quellen geparst wurde.

Version 6.5.0

6 Dez 2018

SDK-Änderungen:

  • Unnötige Abhängigkeiten im Brightcove Android SDK entfernt.

  • Asynchrone Versionen der folgenden Methoden zur OfflineCatalog-Klasse hinzugefügt: getVideoDownloadStatus findAllQueuedVideoDownload findAllVideoDownload findOfflineVideoByID downloadVideo cancelVideoDownload pauseVideoDownload restartVideoDownload deleteVideo getMediaFormatTracksAvailable

  • Es wurde ein Problem behoben, bei dem die Methode SchätzungSize in der Klasse OfflineCatalog einen unerwarteten Wert zurückgab.

  • Es wurde ein Problem behoben, bei dem ein mit VideoParser.buildVideoFromJSON() erstelltes Offline-Video nicht wie erwartet abgespielt wurde.

Änderungen des OnceUx-Plugins:

  • Es wurde ein Problem behoben, bei dem doppelte Beschriftungsmenüelemente angezeigt wurden.

Cast-Plugin: Versionshinweis-Update: Obwohl das Cast-Plugin in dieser Version keine Änderungen aufweist, ist es wichtig, diese Klarstellungen in den derzeit unterstützten Funktionen dieses Plugins zu beachten.

  • Android 9 - Tests haben gezeigt, dass die folgende Berechtigung erforderlich ist, um Chromecast mit Android 9 zu verwenden, insbesondere wenn die App im Hintergrund und wieder in den Vordergrund gebracht wird und um Benachrichtigungen zur Steuerung einer Casting-Sitzung zu verwenden. Dieses uses-permission-Tag sollte der AndroidManifest.xml einer App hinzugefügt werden: <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>

  • Untertitel – Tests haben gezeigt, dass In-Manifest-Untertitel nur mit Dynamic Delivery DASH wie erwartet angezeigt werden.

  • Untertitel – In-Manifest-Untertitel mit HLS werden derzeit nicht unterstützt.

  • Untertitel – Sidecar-Untertitel in Videokonfigurationen werden derzeit nicht unterstützt. Diese Klarstellung ist auch im Versionshinweis zum Cast-Plug-in für die Brightcove Android SDK Version 6.3.0 enthalten.

Version 6.4.0

17. Okt 2018

SDK-Änderungen:

  • Das Brightcove Native SDK für Android unterstützt jetzt Android 9.0 (Pie). Bitte beachten Sie, dass Sie mit der Android Pie-Version einige wichtige Änderungen beachten müssen, z. B. die standardmäßig aktivierte Netzwerk-TLS, die Einstellung des Apache HTTP-Clients und die Einstellung der Android ConnectivityManager-Konstanten. Möglicherweise müssen Sie zusätzliche Änderungen in Ihrer Anwendung vornehmen. Weitere Informationen finden Sie unter https://support.brightcove.com/android-pie-support-native-sdk-android.

  • DefaultSourceSelectionController und ExoPlayerSourceSelectionController bevorzugen jetzt HTTPS-Quellen in ihrer Auswahl, falls verfügbar, andernfalls wählt der Auswahl-Controller die erste verfügbare Quelle aus.

Ältere Versionen

Version 6.3.2

24.09.2018

SDK-Änderungen:

  • Es wurde ein Problem behoben, bei dem die Schaltfläche Einstellungen in Android TV nicht wie erwartet funktionierte.

  • Es wurde ein Problem behoben, bei dem getRefereiceId() und getDescription() in der Video-Klasse nicht wie erwartet funktionierten.

  • Der Video-Klasse wurde eine Methode getLongDescription() hinzugefügt.

  • Es wurde ein Problem in der OfflineCatalog-Klasse behoben, bei dem das Aufrufen von setDownloadPath mit einem Null-Argument eine NullPointerException verursachte.

  • Es wurde ein Problem in der OfflineCatalog-Klasse behoben, bei dem das Aufrufen der SchätzungSize-Methode einen unerwartet großen Wert zurückgeben konnte.

  • Es wurde ein Problem behoben, bei dem eine Aktivität, die nicht für Bild-im-Bild aktiviert war, eine nicht schwerwiegende IllegalStateException auslöste. Der Fehler wird jetzt als Warnung protokolliert.

  • Veraltete Unterstützung für die BrightcoveClosedCaptioningSurfaceView-Klasse.

Änderungen des OnceUx-Plugins:

  • Unterstützung für das VAST Icon-Element hinzugefügt.

Version 6.3.1

09.08.2018

SDK-Änderungen:

  • Es wurde ein Problem behoben, bei dem Android Studio beim Rendern von BrightcoveVideView eine Ausnahme im Layout-Editor auslöst.

ExoPlayer v2-Änderungen:

  • LoadControlConfig- und AllocatorConfig-Klassen hinzugefügt. Die in diesen Klassen festgelegten Werte werden verwendet, um das ExoPlayer DefaultLoadControl-Objekt zu erstellen, das beim Erstellen der ExoPlayer-Instanz verwendet wird. Die AllocatorConfig kann beim Erstellen der LoadControlConfig festgelegt werden. LoadControlConfig kann auf die ExoPlayerVideoDisplayComponent-Instanz festgelegt werden.

Änderungen des OnceUx-Plugins:

  • Es wurde ein Problem behoben, bei dem das in BrightcoveVideoView angezeigte Standard-Posterbild nicht verschwindet, nachdem die Preroll-Wiedergabe gestartet wurde.

Version 6.3.0

27. Juli 2018

Änderungen am Cast-Plugin: Das Cast Plugin wurde mit einer Abhängigkeit von der ExoPlayer Cast Extension v2.7.0 aktualisiert. Bitte beachten Sie, dass bestimmte VideoCloud-Funktionen nur eingeschränkt unterstützt werden oder noch nicht unterstützt werden, wenn das Cast-Plug-in mit der Google-Beispielempfänger-App verwendet wird.

  • Android 9 - Tests haben gezeigt, dass die folgende Berechtigung erforderlich ist, um Chromecast mit Android 9 zu verwenden, insbesondere wenn die App im Hintergrund und wieder in den Vordergrund gebracht wird und um Benachrichtigungen zur Steuerung einer Casting-Sitzung zu verwenden. Dieses uses-permission-Tag sollte der AndroidManifest.xml einer App hinzugefügt werden: <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>

  • Untertitel – Tests haben gezeigt, dass In-Manifest-Untertitel nur mit Dynamic Delivery DASH wie erwartet angezeigt werden.

  • Untertitel – In-Manifest-Untertitel mit HLS werden derzeit nicht unterstützt.

  • Untertitel – Sidecar-Untertitel in Videokonfigurationen werden derzeit nicht unterstützt.

  • Widevine Modular DRM wird nicht unterstützt, wenn das Cast-Plug-in mit der Google-Beispielempfänger-App verwendet wird.

  • Mehrere Audiotracks werden nicht unterstützt, wenn das Cast-Plug-in mit der Google-Beispielempfänger-App verwendet wird.

  • Clientseitige und serverseitige Werbung wird nicht unterstützt, wenn das Cast-Plug-in mit der Google-Beispielempfänger-App verwendet wird.

  • Live- und Live-DVR-Streams werden nicht unterstützt, wenn das Cast-Plug-in mit der Google-Beispielempfänger-App verwendet wird.

FreeWheel-Plugin-Änderungen:

  • Das FreeWheel-Plugin wurde aktualisiert, um FreeWheel AdManager v6.23.0 zu unterstützen. Beachten Sie, dass dies eine bahnbrechende Änderung ist und dass diese Version des Brightcove Native SDK für Android nicht mit früheren Versionen von FreeWheel AdManager funktioniert. Weitere Informationen zu den Änderungen in dieser Version finden Sie in den Versionshinweisen in FreeWheel AdManager v6.23.0.

Änderungen am IMA-Plug-in:

  • Das IMA-Plug-in unterstützt jetzt v3.9.0 des Google IMA SDK für Android.

Version 6.2.3

16. Juli 2018

SDK-Änderungen:

  • Offline-Wiedergabe: Die FileDownloader-Bibliotheksversion wurde auf 1.7.4 aktualisiert.

  • Offline-Wiedergabe: Es wurde ein Problem behoben, bei dem das Hintergrunden der App und das Ändern des Netzwerkstatus eine IllegalArgumentException auslösen konnte.

Version 6.2.2

9. Juli 2018

ExoPlayer v2-Änderungen:

  • Es wurde ein Problem behoben, bei dem Werte im Feld HEADERS des Videoobjekts nicht wie erwartet hinzugefügt wurden.

Änderungen des OnceUx-Plugins:

  • Es wurde ein Problem behoben, bei dem die Suche ohne Werbung während des Videos dazu führen konnte, dass weiterhin Anzeigenereignisse ausgelöst wurden.

Version 6.2.1

5. Juni 2018

ExoPlayer v2-Änderungen:

  • Der Brightcove ExoPlayer wurde auf Version 2.7.0 zurückgesetzt, um eine Regression des Rückwärtssuchverhaltens in Livestreams und eine unerwartete Änderung bei der Berechnung des Live Window Range-Werts zu umgehen.

  • Es wurde ein Problem mit der Berechnung für BrightcoveSegmentTemplate.getSegmentCount behoben, wenn das DASH-Manifest einen anderen startNumber-Parameter als 0 aufweist.

  • Validierung für eine potenzielle NullPointerException in ExoPlayerVideoDisplayComponent.reportPlayerState hinzugefügt

Version 6.2.0

18. Mai 2018

SDK-Änderungen:

  • Eine VideoParser-Klasse mit Methoden zum Erstellen eines Videos und einer Playlist aus einem JSON-Objekt wurde gemäß dem Brightcove Playback API-Antwortformat hinzugefügt.

  • Die Methoden requestPurchaseLicense() und requestRentalLicense() in der OfflineCatalog-Klasse wurden überladen, um den OutputProtection über das CustomerRightsTokenConfig-Objekt festzulegen.

  • Die FileDownloader-Bibliothek wurde für die Offline-Wiedergabe auf 1.7.3 aktualisiert.

  • Ein Race-Condition für die Offline-Wiedergabe beim Löschen mehrerer Videos während des Downloads wurde behoben.

ExoPlayer v2-Änderungen:

  • Der Brightcove ExoPlayer wurde auf 2.7.3 aktualisiert.

  • Die folgenden Methoden wurden von der BrightcoveDrmSession-Schnittstelle als veraltet markiert:

    • DrmException getDrmError()

    • Map<String, String> queryKeyStatus()

    • byte[] getOfflineLicenseKeySetId()

Änderungen des OnceUx-Plugins:

  • Unterstützung für das Parsen und Lesen aller Anzeigen-Creative-IDs von SSAI VMAP hinzugefügt.

  • Die Anforderung für das ID-Attribut im Anzeigen-Tag wurde entfernt.

Version 6.1.2

24.04.2018

SDK-Änderungen:

  • Es wurde ein Problem behoben, bei dem der Download in langsamen Netzwerken (bis zu 256 kbps) nach dem Beenden und Neustarten der App nicht fortgesetzt wurde.

Änderungen des OnceUx-Plugins:

  • Es wurde ein Problem behoben, bei dem alle Anzeigen abgespielt werden, nachdem mehrere Anzeigen-Pods durchsucht wurden.

Version 6.1.1

6. April 2018

SDK-Änderungen:

  • Es wurde eine Offline Analytics-Abhängigkeit behoben, die die App-Größen unerwartet erhöhte.

  • Es wurde ein Problem mit der Offline-Wiedergabe behoben, bei dem einige Downloads bei 99% hängen blieben.

Version 6.1.0

29. März 2018

SDK-Änderungen:

  • Unterstützung für Bild-in-Bild auf Android Oreo hinzugefügt.

  • Ein UI-Leistungsproblem für die Offline-Wiedergabe beim Herunterladen eines Videos wurde behoben, indem alle Download-Manager-Rückrufe in einem Hintergrund-Thread durchgeführt wurden.

  • Verbesserung der Download-Geschwindigkeiten für die Offline-Wiedergabe.

  • Es wurde ein Problem mit der Offline-Wiedergabe behoben, bei dem der Parameter download_id in den Ereignissen video_download_request und video_download_cancellation für klare Downloads fehlte.

  • Es wurde ein Problem mit WebVTT-Untertiteln behoben, bei dem die Verwendung des Attributs "line:" ohne Prozentzeichen (%) die Anzeige der Untertitel verhinderte.

  • Die AbstractOfflineCatalog.renewLicense-Methode ist veraltet und funktioniert jetzt nicht mehr. Um eine Offline-Lizenz zu erneuern, verwenden Sie bitte entweder AbstractOfflineCatalog.requestRentalLicense(Video, Date, long, EventListener) oder AbstractOfflineCatalog.requestPurchaseLicense(Video, EventListener)

ExoPlayer2-Änderungen:

  • ExoPlayer2 meldet jetzt die kumulative Anzahl der Bytes, die über das aktuelle Video-Engagement-Ereignis heruntergeladen wurden, und sendet sie als media_bytes_transferred an den Analytics-Server.

  • Es wurde eine praktische Methode zum Festlegen der Spitzenbitrate hinzugefügt, bevor der Player für ein neues Video vorbereitet wird oder wenn ExoPlayerVideoDisplayComponent.setPeakBitrate(int peakBitrate) aufgerufen wird.

Version 6.0.2

30. Januar 2018

SDK-Änderungen:

  • Unterstützung für Offline-Wiedergabeanalysen hinzugefügt.

  • Das veraltete Widevine Classic-Plugin wurde entfernt.

Änderungen am IMA-Plug-in:

  • Es wurde ein Problem behoben, bei dem viewable_impression-Beacons nicht wie erwartet abgefeuert wurden.

Änderungen des OnceUX-Plugins:

  • Es wurde ein Problem behoben, bei dem Anzeigenmarkierungen nicht an den erwarteten Positionen angezeigt wurden.

  • Es wurden Probleme mit der Suche nach früheren Werbungen und der Wiederaufnahme der Wiedergabe von der beabsichtigten Suchposition behoben.

  • Es wurden Probleme behoben, bei denen Spielersteuerelemente bei Ausrichtungsänderungen in SSAI-Anzeigen angezeigt wurden.

Version 6.0.1

18.12.2017

SDK-Änderungen:

  • Die veralteten Medien-API-Klassen, die im Paket com.brightcove.player.media enthalten sind, wurden aus dem Brightcove Native SDK für Android entfernt.

  • Die folgenden Klassen wurden von com.brightcove.player.media nach com.brightcove.player.model verschoben. Bitte beachten Sie, dass dies eine Breaking Change ist:

    • Lieferart

    • Beschriftungstyp

    • Fehlerfelder

    • Videofelder

ExoPlayer v2-Änderungen:

  • Das Brightcove Native SDK für Android mit ExoPlayer 2 (v2.5.3) ist allgemein verfügbar.

  • Unterstützung für das Omniture-Plugin bei Verwendung von ExoPlayer 2 hinzugefügt.

  • Mehrere Fehlerbehebungen.

ExoPlayer v1-Änderungen:

  • Das Brightcove Native SDK für Android mit ExoPlayer 1 ist veraltet. Weitere Informationen zum Migrationsprozess finden Sie unter https://support.brightcove.com/migrating-exoplayer-2-framework

Vollständige Versionshinweise

Eine vollständige Liste der Versionshinweise finden Sie im Brightcove Native SDK für Android Versionshinweise.