Das Native SDK für Android Version 7.0.1

In diesem Thema erfahren Sie mehr über die neuen Funktionen, die das Brightcove Native SDK für Android Version 7.0.1 bietet.

Überblick


Das Brightcove Native SDK für Android ist in der Version 7 verfügbar, die wichtige Änderungen bei der Erstellung des SDKs mit sich bringt. Diese Version enthält neue Funktionen zur Unterstützung der folgenden Punkte:

  • Geringe Latenz für HLS-Live-Streaming
  • Kompatibilität mit Android 12

SDK-Änderungen

Mit dieser Version des Native SDK für Android wird die MediaPlayer Klasse für die Wiedergabe von Inhalten nicht mehr unterstützt.

Kompatibilität mit Android 12

Das Native SDK für Android bietet jetzt Kompatibilität mit Android OS 12, und alle Funktionen von Android 12 sollten wie erwartet funktionieren. Brightcove empfiehlt, die Änderungen in Android 12 zu überprüfen und den Code Ihrer Anwendung bei Bedarf zu ändern.

Einzelheiten finden Sie in der Referenzliste der Funktionen und Änderungen von Android 12 .

ExoPlayer-Aufrüstung

Das Native SDK für Android 7 enthält eine neue Version des ExoPlayers, die von v2.14.2 auf v2.17.1 aktualisiert wurde. Überprüfen Sie alle Aktualisierungen der ExoPlayer-Bibliotheksversionen.

Die meisten der ExoPlayer-Änderungen werden intern vom Native SDK für Android gehandhabt, aber es gibt auch einige Änderungen, die sich in der öffentlichen API widerspiegeln:

  • Die folgende Schnittstelle benötigt keinen Parameter mehr:
    DrmSession<T extends ExoMediaCrypto>

  • Die folgende Schnittstelle benötigt keinen Parameter mehr:
    ExoPlayerDrmSessionManager<T extends ExoMediaCrypto>

  • Die ExoPlayerDrmSessionManager Klasse macht jetzt ein defaulDrmSessionManager Objekt verfügbar, das in MediaSource-Objekten verwendet werden kann, um einen DRM-Sitzungsmanager einzurichten

  • In der TrackSelectorHelper Klasse ist die folgende Methode veraltet:
    updateTracksSelectionArray(@Nullable TrackSelectionArray trackSelections)
    und wird ersetzt durch
    updateTracksGroupInfos(@Nullable ImmutableList trackGroupInfos)

  • In der MediaSourceUtil Klasse ist die folgende Methode veraltet:
    findRenditionUrl(@NonNull HlsMasterPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)
    und wird ersetzt durch
    findRenditionUrl(@NonNull HlsMultivariantPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)

  • In der ExoAdPlayer Klasse benötigt der Konstruktor ein StyledPlayerView statt eines PlayerView

  • Die folgende Klasse ist veraltet:
    DashAudioTrackSelector
    und wird ersetzt durch
    ExoPlayerVideoDisplayComponent.setPeakBitrate(int)

  • Die folgende Klasse ist veraltet:
    DashPeakBitRateTrackSelector
    und wird ersetzt durch
    ExoPlayerVideoDisplayComponent.setPeakBitrate(int)

  • Die folgende Klasse ist veraltet:
    HLSPeakBitrateTrackSelector
    und wird ersetzt durch
    ExoPlayerVideoDisplayComponent.setPeakBitrate(int)

Gradle und Java-Upgrades

Für die Aufrüstung des ExoPlayers ist Folgendes erforderlich:

  • Gradle 7.4
  • Java 11

Mit dem Native SDK für Android 7 müssen Sie diese beiden Umgebungsabhängigkeiten aktualisieren.

Plugin-Änderungen

Mit dieser Version des Native SDK für Android gibt es Änderungen bei einigen der zugehörigen Plugins.

Cast-Plugin

In der GoogleCastComponent Klasse kehren die folgenden Methoden jetzt void statt zurück PendingResult <RemoteMediaClient.MediaChannelResult>.

  • loadItem(MediaQueueItem, int)
  • addItems(MediaQueueItem)

IMA-Plug-in

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

SSAI-Plugin

Das unterstützt SSAIComponent jetzt die Verwendung eines Brightcove VideoCloud VMAP-XML-Objekts als Quelle. Um ein VideoCloud-VMAP-XML-Objekt als Quelle zu verwenden, rufen Sie auf SSAIComponent.processVideo(String vmapXmlString).