Resumen
El SDK nativo de Brightcove para Android está disponible en una versión principal, la versión 7, que trae cambios importantes en la forma en que se construye. Esta versión incluye una nueva funcionalidad para admitir lo siguiente:
- Baja latencia para transmisión en vivo de HLS
- Compatibilidad con Android 12
cambios SDK
Con esta versión de Native SDK para Android, el MediaPlayer
La clase ya no es compatible con la reproducción de contenido.
Compatibilidad con Android 12
Native SDK para Android ahora ofrece compatibilidad con Android OS 12, y todas las características de Android 12 deberían funcionar como se esperaba. Brightcove recomienda que revise los cambios en Android 12 y modifique el código de su aplicación según sea necesario.
Para obtener más información, consulte la referencia de la lista de características y cambios de Android 12 .
Actualización de ExoPlayer
El SDK nativo para Android 7 incluye una nueva versión de ExoPlayer, que se actualiza de v2.14.2 a v2.17.1. Revise todas las actualizaciones de los lanzamientos de la biblioteca ExoPlayer .
La mayoría de los cambios de ExoPlayer son manejados internamente por Native SDK para Android, pero hay algunos cambios reflejados en la API pública:
- La siguiente interfaz ya no requiere un parámetro:
DrmSession<T extends ExoMediaCrypto>
- La siguiente interfaz ya no requiere un parámetro:
ExoPlayerDrmSessionManager<T extends ExoMediaCrypto>
El
ExoPlayerDrmSessionManager
la clase ahora expone undefaulDrmSessionManager
objeto que se puede usar en objetos MediaSource para configurar un administrador de sesión DRM- En el
TrackSelectorHelper
clase, el siguiente método está en desuso:
y se reemplaza conupdateTracksSelectionArray(@Nullable TrackSelectionArray trackSelections)
updateTracksGroupInfos(@Nullable ImmutableList
trackGroupInfos)
- En el
MediaSourceUtil
clase, el siguiente método está en desuso:
y se reemplaza confindRenditionUrl(@NonNull HlsMasterPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)
findRenditionUrl(@NonNull HlsMultivariantPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)
En el
ExoAdPlayer
clase, el constructor requiere unaStyledPlayerView
en lugar de unPlayerView
- La siguiente clase está en desuso:
y se reemplaza conDashAudioTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
- La siguiente clase está en desuso:
y se reemplaza conDashPeakBitRateTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
- La siguiente clase está en desuso:
y se reemplaza conHLSPeakBitrateTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
Actualizaciones de Gradle y Java
La actualización de ExoPlayer requiere lo siguiente:
- Gradle 7.4
- Java 11
Con Native SDK para Android 7, debe actualizar ambas dependencias ambientales.
Cambios de complemento
Con esta versión de Native SDK para Android, hay cambios en algunos de los complementos asociados.
Complemento de transmisión
En el GoogleCastComponent
clase, los siguientes métodos ahora devuelven void
en lugar de PendingResult <RemoteMediaClient.MediaChannelResult>
.
loadItem(MediaQueueItem, int)
addItems(MediaQueueItem)
Complemento de IMA
La dependencia del SDK de IMA de Google se actualizó a 3.27.0. Esta actualización incluye soporte para Android 12.
Complemento SSAI
El SSAIComponent
ahora admite el uso de un objeto XML Brightcove VideoCloud VMAP como fuente. Para usar un objeto XML de VideoCloud VMAP como fuente, llame SSAIComponent.processVideo(String vmapXmlString)
.