En cada nueva versión de Google Cast que se lanza, los cambios se describen a continuación y se actualizan las referencias de la API. Para conocer los cambios en la lista de verificación de diseño, consulta su changelog.
7 de octubre de 2025
iOS Sender 4.8.4
- Se agregó una IU para que los usuarios lean y aprueben las Condiciones del Servicio y la Política de Privacidad de Cast en el dispositivo emisor.
- La versión mínima compatible con el SDK de iOS ahora es iOS 15.
- CocoaPods lanzó una biblioteca estática de forma predeterminada desde la versión 4.3.1. A partir de la versión 4.8.4, esta biblioteca estática incluye la biblioteca de Protobuf. Te recomendamos que uses la biblioteca estática para evitar posibles problemas de compatibilidad de versiones con Protobuf. Sin embargo, también puedes descargar la biblioteca dinámica.
-
Ten en cuenta que los errores de transmisión y las desconexiones con un valor de
GCKErrorCode
deGCKErrorCodeCancelled
son el comportamiento esperado. Asegúrate de que tu app no vuelva a intentar la transmisión automáticamente si esta falla o se desconecta debido aGCKErrorCodeCancelled
, ya que esto puede causar un comportamiento inesperado si el usuario rechaza las Condiciones del Servicio.
12 de mayo de 2025
Android Sender 22.1.0
-
Se lanzaron play-services-cast:22.1.0 y play-services-cast-framework:22.1.0.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.8.0-beta01 y admite las APIs de
MediaRouter.RouteInfo#connect()
yMediaRouter.RouteInfo#disconnect()
de AndroidX Media Router. -
Agrega un
CastOptions.Builder
para establecer la API deMediaRouterParams.Builder#setMediaTransferRestrictedToSelfProviders(boolean)
de AndroidX Media Router.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.8.0-beta01 y admite las APIs de
28 de octubre de 2024
Android Sender 22.0.0 y Android TV Receiver 21.1.1
- Se corrigió una posible vulnerabilidad de denegación de servicio que se encontró en la biblioteca de Java Lite de Protobuf.
- Se borró MediaNotificationService. Las aplicaciones no deben usarlo directamente.
- Se corrigió un error en dispositivos con Android R o versiones anteriores en el que intentar mostrar una imagen demasiado pequeña en una notificación de Google Cast podía provocar una falla en la IU del sistema.
4 de septiembre de 2024 1 de noviembre de 2024
Web Receiver 3.0.0133 3.0.0135 3.0.0137
- La versión predeterminada de Shaka Player que usa CAF se actualizó de la 4.3.4 a la 4.9.2. Consulta el changelog de Shaka Player para obtener una lista completa de los cambios.
- Se habilitó la precarga de contenido para el reproductor de Shaka. Esto permite cambiar sin problemas entre elementos multimedia o pausas publicitarias.
- Se corrigieron errores causados por el cambio de códecs de Shaka.
- Se agregó un nuevo campo
ErrorSeverity
para los errores de Shaka. Si la gravedad esRECOVERABLE
, la reproducción no debería detenerse. - Se corrigió un error de carga de contenido para las solicitudes de carga simultáneas.
- Internamente, CAF ahora usa
shaka.Player#attach
para adjuntar un elemento multimedia en lugar de pasar el elemento multimedia al constructorshaka.Player
(obsoleto en la API de Shaka). - Se agregaron los campos
frameType
yframeDescription
acast.framework.events.Id3Event
. Estos campos se completan cuando se usa Shaka Player para la reproducción. - Se agregaron eventos
REQUEST_GET_STATUS
yREQUEST_PRELOAD
. Esos eventos se pueden escuchar conPlayerManager#addEventListener
. - Se agregó una respuesta de error para las solicitudes de carga con un
requestId
incorrecto en lugar de fallar de forma silenciosa. - Se corrigió el registro de advertencia para la configuración de
jumpLargeGaps
de Shaka Player, que dejó de estar disponible en Shaka v4. - Se comenzó a propagar
requestId
en el mensajeMediaStatus
para un estadoLOADING
. - Se recicla la instancia del reproductor Shaka cuando se carga contenido nuevo.
- Se quitó la compatibilidad con el comando de medios
QUEUE_SHUFFLE
que dejó de estar disponible. UsaQUEUE_UPDATE
en su lugar. - Se corrigió la compatibilidad con los grupos de anuncios de VAST en los que cada etiqueta
<Ad>
tiene un atributosequence
y una etiqueta<Wrapper>
anidada. - Se corrigió la propagación fija del atributo
crossorigin
sin un valor de<cast-media-player>
al elemento<video>
anidado. - Se expone el idioma de audio integrado en MPL.
22 de agosto de 2024
iOS Sender 4.8.3
- Se corrigió un error por el que el botón de Cast no abría el selector de dispositivos cuando se presionaba.
- Se corrigió una falla que afectaba a los dispositivos con iOS 17 y versiones posteriores relacionada con AVRouting.
18 de abril de 2024
iOS Sender 4.8.1
- La versión mínima compatible con el SDK de Cast ahora es iOS 14.
- El manifiesto de privacidad se incluye en el paquete junto con el xcframework firmado.
- El modo de invitado dejó de estar disponible y se quitó. A partir de esta versión, habrá disponible un solo tipo de SDK para la integración.
- Se corrigió una falla que se producía si, a veces, se reproducía un anuncio breve durante la transmisión.
11 de diciembre de 2023
Web Receiver 3.0.0122
- Se agregó compatibilidad con Ad Pods y Ad Buffet para VAST.
- Se actualizó la IU de los controles multimedia del reproductor de Cast para dispositivos Google TV.
- Se agregó un nuevo campo
audioTrackInfo
al objetoTrack
. - Se agregó
cast.framework.system.Message
, que representa un mensaje recibido de un remitente o enviado a él. - Se cambió la lógica de las pausas de búsqueda. Ahora, el receptor web crea una interrupción
seek-{timestamp}
sintética solo cuandoBreakManager#setBreakSeekInterceptor
devuelve más de 1 interrupción. De lo contrario, la interrupción de búsqueda sigue siendo igual a la interrupción original en una línea de tiempo. - Se agregó la opción
CastReceiverOptions#shakaVariant
para cargar versiones de depuración de Shaka Player en CAF. -
Se corrigió el problema por el que
PlaybackConfig#licenseRequestHandler
yPlaybackConfig#licenseResponseHandler
no se reconocían con Shaka para HLS cuando se usaba la encriptación AES-128. - Se corrigió un error por el que no se activaba
ID3Event
cuando se usaba Shaka Player. - Se corrigieron los problemas con los archivos de texto cargados de forma paralela cuando se usan anuncios previos al video.
- Se corrigió la renderización de texto cuando se usa
UITextDisplayer
. - Se corrigieron varios problemas relacionados con la distinción entre mayúsculas y minúsculas en VAST, los tipos de MIME y los nombres de los sistemas de protección de contenido.
- Se corrigieron varios problemas relacionados con los subtítulos forzados.
- Se corrigió la propagación de códigos de
EndedReason
para eventos deBREAK_CLIP_ENDED
.
4 de diciembre de 2023
Android Sender 21.4.0 y Android TV Receiver 21.0.1
-
Se lanzaron play-services-cast:21.4.0 y play-services-cast-framework:21.4.0.
- Se aumentó minSdkVersion de 16 a 19.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.6.0-beta01. Esto hace que
MediaRouteButtons
siempre sea visible de forma predeterminada. Esto permitió reducir los casos en los que se inicia automáticamente la detección de dispositivos Cast sin la acción del usuario. -
Se agregó
CastOptions.Builder#setSessionTransferEnabled
para establecer si la aplicación emisora debe mostrar dispositivos Cast cuando el Selector de salida está habilitado. El valor predeterminado es verdadero. -
Ya no se crean objetos
MediaSessions
cuando las apps no configuranCastMediaOptions
o establecen CastMediaOptions como nulo. -
Se corrigió un error
MiniControllerFragment
android.view.InflateException
que podía producirse al usarFragmentContainerViews
. -
Se agregaron versiones nuevas de
CastButtonFactory#setUpMediaRouteButton
que devuelvenTasks
que las apps pueden detectar para indicar si la acción se realizó correctamente o si se arrojó una excepción. Las versiones anteriores que no toman un argumentoExecutor
ignorarán las ModuleUnavailableExceptions y fallarán de forma silenciosa.
-
Se lanzó play-services-cast-tv:21.0.1.
- Se aumentó minSdkVersion de 16 a 19.
- Esta versión incluye mejoras en la calidad.
20 de julio de 2023
iOS Sender 4.8.0
- La versión mínima compatible con el SDK de iOS ahora es iOS 13.
- Primera versión estable de XCFramework.
- XCFrameworks disponibles a través de Cocoapods.
- Se restableció la funcionalidad para controlar el volumen con los botones físicos de volumen durante la reproducción de contenido multimedia.
- Ahora, el botón de transmisión respeta el color de tinte cuando se usa en una barra de navegación.
- Ahora se puede personalizar el color del título de navegación con la API de GCKUIStyle.
- Se solucionó el problema de la barra de navegación transparente en la vista de lista de subtítulos de pistas multimedia.
- Se corrigió una falla en la versión beta de XCFramework.
- Se agregó una API para vincular un UIControl con acciones de avance o retroceso.
- Se agregó compatibilidad con la transmisión a las Pixel Tablets.
6 de julio de 2023
Web Receiver 3.0.0111
-
Se agregó compatibilidad con la inserción de anuncios dinámicos a través de
BreakManager
,addBreak(breakData, breakClips, broadCastMediaStatus)
yremoveBreakById(breakId)
. -
Se agregó el análisis de cadenas
Subtype
a los manifiestos fluidos. -
Se agregó compatibilidad con solicitudes asíncronas en
manifestRequestHandler
,segmentRequestHandler
ylicenseRequestHandler
para Shaka Player. - Se agregó compatibilidad con subtítulos forzados.
- Se actualizó la versión predeterminada de Shaka para CAF a la versión 4.3.4.
-
Se aclaró la descripción del parámetro
setActiveByIds
. - Se corrigió la forma en que CAF elige pistas de audio distintas.
- Se corrigieron las conversiones de tipo del cuerpo de la solicitud para los filtros de solicitudes de Shaka.
-
Se agregó la capacidad de consultar
CreativeInformation
relacionados con unBreakClip
enBreakManager
getCreativeInfoByClipId(breakClipId)
. - Se corrigió la falta de metadatos de medios durante la carga del elemento de medios en dispositivos controlados por el D-pad.
-
Se agregaron las propiedades
hlsSegmentFormat
yhlsVideoSegmentFormat
aBreakClip
. - Se corrigieron las comparaciones de tipos de MIME que distinguen mayúsculas de minúsculas con MPL.
- Se corrigió el almacenamiento en búfer infinito de HLS en vivo (basado en TS) al cargar con Shaka Player.
-
Se corrigió el comportamiento de
PlayerDataBinder
para el eventoIS_AT_LIVE_EDGE_CHANGED
. - Se corrigió el bucle infinito que se producía cuando no se proporcionaban datos suficientes en los segmentos de TS con MPL.
-
Se agregó
error.stack
para los errores de Shaka Player. -
Se cambió para usar el campo
audioMimeType
en lugar deaudioCodec
del objeto de pista de Shaka Player para propagar el campocast.framework.messages.Track.trackContentType
de las pistas de variantes. -
Se agregó
shaka.extern.track.label
acast.framework.messages.Track.name
para los segmentos de Shaka Player. -
Se expandió el objeto
cast.framework.stats.Stats
para tener en cuenta los campos existentes enshaka.extern.Stats
. - Se corrigieron los cálculos de tiempo de medios para el contenido con pausas incorporadas expandidas.
28 de marzo de 2023
Android Sender 21.3.0 y Android TV Receiver 21.0.0
-
Se lanzaron play-services-cast:21.3.0 y play-services-cast-framework:21.3.0.
-
Ahora se usa
NotificationManager
para publicar notificaciones de contenido multimedia de Cast en lugar deForeground Service
. -
Se agregó un nuevo
CastReasonCodes#CAST_CANCELLED
para indicar que se cancelan las sesiones de Cast.
-
Ahora se usa
-
Se lanzó play-services-cast-tv:21.0.0.
- Se corrigió la anotación de anulabilidad para
MediaManager
.
- Se corrigió la anotación de anulabilidad para
17 de octubre de 2022
Web Receiver 3.0.0105
- Se actualizó Shaka Player a la versión 3.2.11.
-
Se agregó
cast.framework.PlaybackConfig#enableUITextDisplayer
para renderizar subtítulos en Shaka Player con el DOM. -
Se agregaron
cast.framework.CastReceiverOptions#shakaVersion
ycast.framework.CastReceiverOptions#useShakaForHls
para permitir que los receptores usen Shaka Player para la reproducción de HLS. -
PlaybackConfig#manifestHandler
,PlaybackConfig#segmentHandler
yPlaybackConfig#licenseHandler
ahora pueden acceder a los encabezados de respuesta HTTP. -
Se agregó
customData
aCommandAndControlManager#ErrorResponseData
cuando el mensajeLOAD_BY_ENTITY
se resuelve con un error.
10 de octubre de 2022
Android Sender 21.2.0
-
Se lanzaron play-services-cast:21.2.0 y play-services-cast-framework:21.2.0.
-
Se presentó la función
Output Switcher
. -
Se agregó una nueva API
Cast.Listener#onDeviceNameChanged()
para notificar el cambio de nombre del dispositivo parastream transfer
. -
Se dejaron de usar
CastOptions.Builder#setVolumeDeltaBeforeIceCreamSandwich(double)
yCastOptions#getVolumeDeltaBeforeIceCreamSandwich()
. -
Se corrigió
ForegroundServiceStartNotAllowedException
conMediaNotificationService
. -
Se actualizó
MediaNotificationService
conMedia controls in System UI
. -
Se actualizaron las APIs de
RemoteMediaClient
para que aceptencustomData
anulable. -
Se actualizó
MediaInfo.Builder
para aceptarcontentId
ocontentURL
. -
Se actualizó
ImagePicker#onPickImage
para aceptarMediaMetadata
anulable. -
Se actualizó la dependencia
com.google.android.datatransport:transport-api
a la versión más reciente.
-
Se presentó la función
8 de agosto de 2022
Android Sender 21.1.0 y Android TV Receiver 20.0.0
-
Se lanzaron play-services-cast:21.1.0 y play-services-cast-framework:21.1.0.
-
CastContext#getSharedInstance(Context)
quedó obsoleto. En su lugar, usaCastContext#getSharedInstance(Context, Executor)
, que devuelve una API de Task, yModuleUnavailableException
para controlar la excepción cuando el SDK de Cast no puede cargar el módulo interno de Cast. -
ApplicationMetadata#getImages()
quedó obsoleto. En su lugar, usaApplicationMetadata#getIconUrl()
, que devuelve la imagen de la aplicación que se configuró en la Consola para desarrolladores de Cast. -
Se corrigió un error de
ConcurrentModificationException
que podía producirse al registrar y anular el registro deMediaQueue.Callbacks
. -
Se corrigió
MediaInfo#getStreamDuration()
para las transmisiones en vivo. -
Se corrigieron las restricciones del trampolín de notificaciones para
MediaNotificationService
en Android S. -
Se corrigió el problema por el que
CastContext
filtraba la referencia a la actividad. - Se corrigió un error por el que se mostraba una imagen de fondo nítida durante un anuncio en lugar de una versión borrosa.
-
-
Se lanzó play-services-cast-tv:20.0.0.
- Se aumentó el valor de
minSdkVersion
de 14 a 16. -
Se corrigió un problema con
MediaManager#setSessionCompatToken(MediaSession.CompatToken)
en el que no se admitía correctamente un argumento nulo.
- Se aumentó el valor de
31 de marzo de 2022
Web Receiver 3.0.0103, MPL Player 1.0.0.113
- Se actualizó la versión predeterminada de Shaka Player a la 3.2.2.
-
Se agregó una nueva API,
cast.framework.PlaybackConfig#shakaConfig
, para permitir la anulación de la versión de Shaka Player y otras opciones de Shaka. -
Se agregó una nueva API,
cast.framework.ui.Controls#hasMediaControlsOverlay()
, para consultar si la superposición de controles de medios se renderiza sobre la aplicación. -
Se agregó un nuevo diseño,
cast.framework.ui.ControlsButton.LIKE_HEART
, para la acción del usuario Me gusta. -
El valor
currentMediaTime
de los datos del eventocast.framework.events.EventType.BREAK_CLIP_ENDED
ahora representa la hora actual del clip de interrupción más reciente en el momento en que ocurrió el evento. -
Se agregó un método
cast.framework.PlayerManager#getRawCurrentTimeSec
que devuelve el tiempo de los medios del elemento multimedia. -
Se agregó
cast.framework.NetworkRequestInfo#timeoutInterval
para especificar el tiempo de espera de la solicitud HTTP para las solicitudes del reproductor. - Se corrigieron errores de MPL en la decodificación de subtítulos CEA 608/708 para transmisiones A/V separadas.
- Se corrigió la lógica de análisis de la marca de tiempo de WebVTT de MPL para aceptar más de 2 dígitos para el valor de horas.
9 de diciembre de 2021
Android Sender 21.0.0
- Se agregó una mejor compatibilidad con la nulidad para Kotlin, ya que las infracciones de seguridad nula ahora son errores. Los desarrolladores de Java no verán ningún impacto. Es posible que los desarrolladores de Kotlin vean errores de compilación nuevos si tienen código existente que no era seguro para nulos.
19 de noviembre de 2021
iOS Sender 4.7.0
- Se corrigió la compatibilidad con el emisor de iOS para usar credenciales de ATV con Cast Connect.
- Se corrigió un error por el que las barras de navegación tenían fondos transparentes cuando se compilaban con Xcode 13.
-
Se corrigieron los problemas de accesibilidad informados con el
GCKUICastButton.
. - Se corrigió un error por el que cambiar entre Wi-Fi y datos celulares desconectaba una sesión de transmisión en lugar de suspenderla.
- Se dejó de admitir iOS 10 y iOS 11 y, como consecuencia, se dejó de admitir arquitecturas de 32 bits.
- Se corrigieron otros errores y se mejoró el rendimiento.
16 de noviembre de 2021
Android Sender 20.1.0
- Nota: Las apps segmentadas para Android 12 deben actualizarse a Android Sender 20.1.0 para evitar fallas en el tiempo de ejecución.
- Mejoras en las filas
-
Se agregó una nueva devolución de llamada
itemsReorderedAtIndexes
a MediaQueue que se llama cuando se reordena la cola. - Se agregó compatibilidad con la serialización de comandos de la fila.
-
Se hizo que el parámetro
customData
enRemoteMediaClient#queueSetRepeatMode
sea anulable. - La función Pantalla remota dejó de estar disponible.
- Se aumentó el
minSdkVersion
de 14 a 16.
26 de octubre de 2021
Web Receiver 3.0.0102
- Se actualizó a la versión 3.0.13 del reproductor Shaka (que, a su vez, corrige varios problemas informados anteriormente).
- Se agregó compatibilidad con imágenes secundarias en pantallas inteligentes y Chromecasts.
- Se solucionó un problema por el que no se mostraban subtítulos en las transmisiones almacenadas en búfer debido a un error en la lógica utilizada para detectar pistas duplicadas.
-
Se solucionó un problema por el que no se activaba la devolución de llamada de error del receptor cuando
LOAD_BY_ENTITY
devolvía un error. - Se agregó compatibilidad con los códecs de audio AAC de alta eficiencia (HE-AAC) para las transmisiones de transporte.
-
Se corrigió un error por el que
PlayerManager.getStats()
no devolvía los valores correctos de altura y ancho. -
Se quitó la información de VAST y VMAP de los mensajes de
MediaStatus
para evitar desbordamientos que puedan provocar que un remitente se desconecte del receptor. -
Se corrigió un problema por el que no se proporcionaba el
endedReason
al remitente cuando se omitían los anuncios. - Se corrigió un problema por el que se quitaban las pausas publicitarias de la cola de carga antes de reproducirse.
-
Se agregó un nuevo campo
cast.framework.message.QueueChange#reorderItemIds
que contiene la lista de elementos de la cola afectados por la operaciónQUEUE_CHANGE
. - Se redujo el almacenamiento en búfer en las transmisiones en vivo de HLS en MPL cuando se cambia entre pistas de audio, por lo que el audio y el video ahora permanecen sincronizados.
- Se corrigió el análisis de transmisiones HLS en MPL con subtítulos CEA608/CEA708 incorporados.
- Los controles multimedia para Chromecast con Google TV se ocultarán cuando el contenido multimedia se pause durante más de 5 segundos.
26 de mayo de 2021
iOS Sender 4.6.1
- Se corrigió un problema por el que se suspendían las sesiones de Cast en segundo plano para las aplicaciones que permiten la ejecución en segundo plano.
17 de mayo de 2021
iOS Sender 4.6.0
- Se cambió el comportamiento predeterminado del botón Transmitir para que siempre se muestre cuando haya conexión a Wi-Fi.
- Se agregó un nuevo diálogo de ayuda que se muestra cuando el usuario presiona el botón de Cast y no se encuentran dispositivos.
-
API de
GCKUICastButton::triggersDefaultCastDialog
obsoleta. -
Se agregó compatibilidad más uniforme para la personalización de diálogos en las apps que implementan una IU personalizada a través de la nueva API
GCKUICastButtonDelegate
. - Se agregó compatibilidad con el modo oscuro para iOS 13 y versiones posteriores.
-
Se agregó la personalización de marcadores de anuncios a
GCKUIStyleAttributes
. -
Se agregó compatibilidad con
hlsSegmentFormat
yhlsVideoSegmentFormat
en los medios. - Corrección de errores y mejoras en el rendimiento.
29 de abril de 2021
Web Receiver 3.0.0096
20 de abril de 2021
Android Sender 20.0.0 y Android TV Receiver 18.0.0
-
Se lanzaron play-services-cast:20.0.0 y play-services-cast-framework:20.0.0.
- Se borraron GameManager y las APIs relacionadas. Dejaron de estar disponibles desde 2017.
-
Se agregó la clase
SessionState
a la biblioteca cliente de Cast. -
Se agregó
CastReasonCodes
para proporcionar explicaciones detalladas deCastStatusCodes
. Usa el métodoCastContext#getCastReasonCodeForCastStatusCode(int)
para traducir deCastStatusCodes
aCastReasonCodes
. -
Se agregaron
HlsSegmentFormat
yHlsVideoSegmentFormat
aMediaInfo.Builder
. -
Marcó el
foregroundServiceType
deMediaNotificationService
comomediaPlayback
. -
Se actualizaron las dependencias en
com.google.android.datatransport:transport-api
a la versión más reciente. -
Se agregó un constructor
MediaLoadRequestData.Builder
para compilar a partir de un objetoMediaLoadRequestData
. - Se corrigió un problema con el botón de reproducción/pausa en el reproductor en miniatura cuando se cambiaba de VOD a transmisión en vivo.
-
Se implementó
MediaIntentReceiver#ACTION_DISCONNECT
para las notificaciones de contenido multimedia de Cast.
-
Se lanzó play-services-cast-tv:18.0.0:
-
Se agregaron las clases
StoreSessionRequestData
yStoreSessionResponseData
a la biblioteca de cast-tv.
-
Se agregaron las clases
5 de abril de 2021
Web Receiver 3.0.0095
- Se actualizó Shaka Player a la versión 3.0.10.
-
El botón de Cast ahora se muestra de forma predeterminada cuando se admite el comando multimedia
STREAM_TRANSFER
. - Se agregó la barra de sugerencias en la parte inferior de la IU de exploración de contenido multimedia. La barra de sugerencias contiene chips interactivos que, cuando se seleccionan, pueden reproducir un elemento multimedia o desplazarse por los elementos multimedia disponibles. Cada chip también se asigna a un comando disponible del Asistente de Google. Actualmente, las chips de sugerencias solo se admiten cuando el idioma del sistema está configurado en inglés o japonés.
- Se corrigió un error en el Chromecast con Google TV en el que se mostraba la superposición de controles multimedia cuando se transmitía contenido de fotos al receptor predeterminado.
- Se agregó compatibilidad con el evento
TRACKS_CHANGED
.
18 de diciembre de 2020
Web Receiver 3.0.0085
-
Se agregaron opciones a
CastReceiverOptions
para inhabilitar la carga de Shaka y MPL.
3 de diciembre de 2020
iOS Sender 4.5.3
-
Se corrigió el error de tiempo de carga "Símbolos indefinidos para la arquitectura arm64" para
GCKCredentialsData
. -
Se corrigió el error del compilador por conflicto de nulabilidad en
GCKCredentialsData
. -
Ahora se registran mensajes de advertencia si faltan las entradas de servicio de Bonjour requeridas en
Info.plist
.
4 de noviembre de 2020
iOS Sender 4.5.2
-
Se actualizó la versión mínima de la biblioteca
Protobuf
a la 3.13 en CocoaPods. El uso de versiones anteriores deProtobuf
provocará una falla en el SDK. - Esta versión es exclusiva de CocoaPods y usa el mismo binario que la versión 4.5.1.
13 de octubre de 2020
iOS Sender 4.5.1
-
Se corrigió un problema por el que
GCKUICastButton
con un selector de dispositivos personalizado no se actualizaba para reflejar el estado correcto de Cast. - Se corrigió la advertencia "Conflicting nullability specifier on return types".
14 de septiembre de 2020
Web Receiver
- Se actualizó Shaka Player a la versión 2.5.16.
iOS Sender 4.5.0
- Se agregó compatibilidad con los cambios en la detección de dispositivos Cast en iOS 14, que requiere el permiso explícito del usuario cuando se transmite por primera vez. Consulta Cómo transmitir contenido por primera vez en iOS 14 para obtener más información.
- Se actualizó la compatibilidad mínima del SDK a iOS 10.
8 de septiembre de 2020
Web Sender
- Se introdujo Cast Connect, que permite que las apps de Chrome transmitan contenido a las apps de Android TV. Para obtener más información, consulta la documentación del receptor de Android TV.
31 de agosto de 2020
Web Receiver
- Se agregó compatibilidad con #EXT-X-DATERANGE en HLS y EventStream en DASH.
3 de agosto de 2020
Remitente de iOS 4.4.8
- Se presentó Cast Connect, que permite que las apps para iOS transmitan contenido a las apps de Android TV. Para obtener más información, consulta la documentación del receptor de Android TV.
29 de julio de 2020
Android Sender 19.0.0 y Android TV Receiver 17.0.0
-
Se introdujo Cast Connect, que permite que las apps de Android TV
cumplan con el protocolo de Cast para que se comporten como apps
de Receiver. Para obtener más información, consulta la documentación del receptor de Android TV.
- Se lanzó play-services-cast-tv:17.0.0 como el SDK del receptor para apps de Android TV.
- Se lanzaron play-services-cast:19.0.0 y play-services-cast-framework:19.0.0, incluidas las APIs del emisor de Cast Connect y las APIs que usa play-services-cast-tv.
-
Actualizaciones de la API:
-
Obsoleto: Usa
AdBreakStatus#AD_BREAK_CLIP_NOT_SKIPPABLE
en lugar deAdBreakClipInfo#AD_BREAK_CLIP_NOT_SKIPPABLE
. -
Se cambió el nombre de
CastRemoteDisplayLocalService#getDisplay()
aCastRemoteDisplayLocalService#getCastRemoteDisplay()
para evitar un conflicto de API en Android 11. -
Se agregaron
getCustomData()
ygetType()
enMediaError
. -
Se agregaron constantes de bits de comandos compatibles detallados (
MediaStatus#COMMAND_*
) enMediaStatus
. -
Se expuso
MediaTrack#getRoles()
. -
Se expuso
RemoteMediaClient.Callback#onMediaError()
.
-
Obsoleto: Usa
13 de julio de 2020
Web Receiver
- Se mejoró la detección de categorías de medios para la IU predeterminada (video vs. audio).
- Se agregó compatibilidad con el tiempo absoluto en vivo de Shaka Player.
- Se corrigió un problema relacionado con fallas de audio en dispositivos Nest Hub Max.
- Se actualizó Shaka Player a la versión 2.5.12.
4 de mayo de 2020
Web Receiver
- Ahora se pueden configurar los valores de tiempo de espera para los comandos del Asistente de Google.
- Ahora, los códigos de error detallados de MPL se exponen en los eventos de error.
-
Ahora se pueden aplicar los comandos de medios compatibles con la marca
enforceSupportedCommands
. - Se corrigieron los comandos admitidos que se informaban durante una interrupción de la reproducción.
- Se corrigió un problema con una solicitud de carga aleatoria del Asistente.
- Se corrigió un error en los valores de
getStats
.
12 de marzo de 2020
Web Receiver
-
Se agregó la nueva capacidad del dispositivo
IS_CBCS_SUPPORTED
adeviceCapabilities
. - Se actualizó Shaka Player a la versión 2.5.8.
27 de febrero de 2020
iOS Sender v4.4.7
- Se corrigieron los botones de volumen físicos para las apps que no usan ningún componente de IU del SDK.
-
Se corrigió un problema con la etiqueta
currentTime
en el controlador expandido cuando se presionaban los botones de avance o retroceso de forma repetida. -
Los elementos multimedia en
GCKMediaQueue
se conservan después de que la app pasa a segundo plano. -
Actualizaciones de personalización de la IU:
- Ahora se puede personalizar la barra de progreso del minicontrol.
- Ahora se puede personalizar el color de fondo de la barra de navegación y la barra de herramientas del diálogo de Cast.
- Se corrigieron problemas de la IU específicos del iPhone X.
- Se corrigieron algunos problemas que causaban bloqueos y fallas.
24 de febrero de 2020
Android Sender 18.1.0
-
Se agregaron constantes predefinidas para
MediaError
códigos de error detallados y motivos de error.
22 de enero de 2020
Web Receiver
- Se solucionó un problema por el que se transmitían varios estados de medios cuando se cambiaban los comandos admitidos.
Receiver v2
- Se mejoró la selección de la tasa de bits para los anuncios de VAST.
MPL
- Se agregó compatibilidad con la recuperación previa de claves de sesión. Para obtener más información, consulta el borrador de la 2ª edición de HTTP Live Streaming.
7 de enero de 2020
Web Receiver
-
Se agregó compatibilidad con metadatos cronometrados ID3 en
cast.framework.events.EmsgEvent
. Además, ahora se envíaEmsgEvent
para el contenido de HLS/CMAF. -
Se corrigió un problema por el que faltaban datos del reproductor durante
PLAYER_LOAD_COMPLETE
cuando se realizaba la transición a una nueva sesión de medios. - Se corrigió un problema por el que el ícono de medios se superponía con el número y la cuenta regresiva del clip de descanso.
- Se solucionó el problema por el que la cuenta regresiva del primer clip de corte siempre mostraba 0:00.
- Se actualizó Shaka Player a la versión 2.5.6.
Web Receiver v2
-
Se agregó la nueva capacidad del dispositivo
IS_DEVICE_REGISTERED
adeviceCapabilities
. Si se configura, el dispositivo Cast se registra en Cast Developer Console para la depuración. - Se corrigió un problema de carga que se detenía.
- Ahora se envían mensajes de error de medios individuales para cada elemento con errores en la cola.
MPL
- Se solucionó un problema con las transmisiones en vivo en el que el audio seguía reproduciéndose durante un tiempo después de que se recibía un mensaje de detención.
- Se corrigió un problema por el que se mostraban artefactos de compresión de video durante los cambios de nivel de calidad.
- Se solucionó un problema por el que fallaban las transmisiones de HLS que usaban segmentos *.m4s.
5 de diciembre de 2019
Android Sender 18.0.0
-
Se agregó
setMediaSessionEnabled
para que los desarrolladores habiliten y deshabiliten una sesión de medios creada por el SDK de Cast. - Se cambió la forma en que se muestran las notificaciones de contenido multimedia durante una sesión de Cast. Si la notificación de medios está habilitada, siempre se mostrará durante una sesión de transmisión. Anteriormente, solo se mostraba cuando la app estaba en segundo plano.
-
Se cambiaron algunas clases relacionadas con los medios para implementar una interfaz
Parcelable
.
11 de noviembre de 2019
iOS Sender v4.4.6
- Se solucionó un problema relacionado con la versión mínima compatible de iOS 9.
7 de octubre de 2019
Web Receiver
- Se expusieron los roles de los segmentos como parte de los metadatos de los segmentos.
- Se actualizó la versión de Shaka Player a la 2.5.5.
23 de septiembre de 2019
iOS Sender v4.4.5
- Se mejoró la compatibilidad con la detección de dispositivos Cast y la administración de sesiones.
-
Se agregaron nuevos comandos de medios a
GCKMediaStatus
. -
Se agregó la propiedad
whenSkippable
aGCKAdBreakStatus
. - Se corrigieron errores de la IU para los anuncios y iOS 13.
11 de septiembre de 2019
Android Sender 17.1.0
-
Se agregó el campo
MediaError
a RemoteMediaClient.MediaChannelResult que se puede usar para acceder al código de error detallado de los comandos de medios que fallaron. -
MediaStatus.COMMAND_SKIP_FORWARD
yMediaStatus.COMMAND_SKIP_BACKWARD
dejaron de estar disponibles. En su lugar, las apps deben usarMediaStatus.COMMAND_QUEUE_NEXT
yMediaStatus.COMMAND_QUEUE_PREVIOUS
. -
Se agregó una nueva dependencia en
com.google.android.datatransport:transport-api:2.0.0
.
9 de septiembre de 2019
Web Receiver
-
El tipo de metadatos
TV_SHOW
ahora tiene una vista previa de "Mi lista" en el reproductor predeterminado si el siguiente elemento se precargó. -
Se agregó la clase
ContentRating
al espacio de nombrescast.framework.messages
. -
Se actualizó el título de audio predeterminado de la IU para que
metadata.artist
tenga prioridad sobremetadata.albumArtist
. - Se agregó compatibilidad con valores de startTime negativos para indicar la hora de inicio relativa al final del contenido o al borde en vivo.
- Exploración multimedia:
- El panel de navegación de medios ahora se oculta automáticamente después de 30 segundos de inactividad del usuario.
- Se agregaron el botón de reproducción/pausa y la miniatura del elemento multimedia a la esquina superior derecha de la superposición de exploración de contenido multimedia.
- Se actualizó el comportamiento de la lista de exploración de contenido multimedia. Ahora, el desplazamiento horizontal se restablece a la posición inicial más a la izquierda cada vez que se establece el contenido de Media Browse.
- Correcciones de errores:
-
Se retrasa la resolución de la promesa de finalización de
BasePlayer
para permitir que se active el evento del elemento multimedia. - Se controló el error de carga para la precarga de anuncios.
- Ahora la marca de agua se muestra con el resto de los metadatos.
-
La IU de audio predeterminada en Chromecast respeta los estilos de
.progressBar
. - Se eliminó la presentación de una pantalla IDLE antes de LOADING y entre la reproducción de elementos multimedia posteriores.
- Se corrigió la detención de búsqueda para el contenido de Dash.
Web Receiver v2
-
Se agregó la clase
ContentRating
al espacio de nombrescast.receiver.media
. - Se corrigió un error por el que los datos de error se propagaban de forma incorrecta cuando había varios elementos en la cola.
Biblioteca de Media Player
- Se agregaron atributos de #EXT-X-MEDIA de HLS a la API.
- Correcciones de errores:
- Se corrigió un problema por el que las operaciones remove() de SourceBuffer fallidas provocaban que se fallara la reproducción al cambiar de pista de audio.
- Se corrigió un problema de análisis cuando se especificaba un tipo de formato de audio empaquetado (por ejemplo, *.ec3), pero se usaban segmentos basados en MPEG-4 (por ejemplo, *.mp4, *.mp4a, etcétera).
- Se corrigió un problema de HLS por el que los subtítulos CEA608 integrados se mostraban con una latencia notable.
- Se corrigió el problema por el que no se cargaba el contenido de HLS y Smooth sin audio.
27 de agosto de 2019
Web Sender
- Web Sender ahora usa la nueva sintaxis de Custom Elements v1. Esta versión reemplaza la versión 0, que ya no está disponible.
-
Se corrigieron los eventos de cambio para
breakTime
,breakClipTime
yliveSeekableRange
con las nuevas funcionesgetEstimatedBreakTime
,getEstimatedBreakClipTime
ygetLiveSeekableRange
agregadas a Chrome M77.
12 de agosto de 2019
iOS Sender v4.4.4
- Se mejoró la experiencia en iOS 13.
- Se mejoró la compatibilidad con la detección de dispositivos Cast.
30 de julio de 2019
Web Receiver
- Se actualizó la versión de Shaka Player a la 2.5.1.
- Se solucionó el problema por el que la superposición de metadatos desaparecía demasiado rápido durante la carga de contenido.
- Se corrigió el control del rechazo en el interceptor de carga para borrar el estado de carga.
- Se actualizó
setBrowseContent
para que acepte valores nulos. - Se solucionó un problema por el que la hora actual informada era incorrecta cuando se buscaba sobre cortes publicitarios.
- Se agregó compatibilidad con ignoreTtmlPositionInfo para ignorar el posicionamiento de los subtítulos en TTML.
- Se mejoró la compatibilidad con el manejo de errores de carga:
- Se evitó la activación de varios
MediaFinishedEvent
. - Se activó la devolución de llamada de error del administrador de medios para borrar el reproductor en caso de error de carga.
22 de julio de 2019
iOS Sender v4.4.3
- Se mejoró la compatibilidad con el manejo de errores de carga proporcionando un error_reason.
- Se lanzó una versión del SDK sin el modo de invitado.
17 de junio de 2019
Android Sender 17.0.0
- El SDK más reciente cambia de las bibliotecas de Android Support a las bibliotecas de Jetpack (AndroidX). Las bibliotecas no funcionarán a menos que realices los siguientes cambios en tu app:
-
Actualiza
com.android.tools.build:gradle
a la versión 3.2.1 o una posterior. - Actualiza
compileSdkVersion
a la versión 28 o posterior. - Actualiza tu app para usar Jetpack (AndroidX). Sigue las instrucciones en Cómo migrar a AndroidX.
- Para obtener más información, consulta las Notas de la versión de las APIs de Google para Android.
10 de junio de 2019
Web Receiver
- Se agregó compatibilidad con Explorar contenido multimedia, una nueva función para descubrir contenido en pantallas inteligentes.
- Se agregó la localización en la IU predeterminada para 9 configuraciones regionales nuevas:
- Danés
- Inglés (Reino Unido)
- Inglés (India)
- Inglés (Singapur)
- Francés (Canadá)
- Italiano
- Noruego
- Holandés
- Sueco
- Se quitaron las esquinas redondeadas de la portada del álbum en la IU del control remoto.
- Se corrigieron errores en Live y otras áreas.
SDK de iOS Sender v4.4.2
- Modo de invitado
- Se agregó compatibilidad con la opción "Habilitar modo de invitado" de la Consola del desarrollador de Cast.
- Se solucionó un problema de administración de sesiones del modo de invitado.
- Correcciones de errores
- Se corrigió un problema de localización que se introdujo en la versión 4.4.1.
24 de abril de 2019
iOS Sender v4.4.1
- Se introdujo la compatibilidad alfa con las transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregaron nuevas estructuras de datos y atributos para el estado de la transmisión en vivo.
- Se agregaron claves nuevas de GCKMediaMetadata.
- Se agregaron los siguientes comandos de contenido multimedia para transmisiones en vivo:
- [GCKRemoteMediaClient loadMediaWithLoadRequestData:]
- [GCKRemoteMediaClient seekWithOptions:]
- Se mejoró la IU del controlador expandido para admitir transmisiones en vivo:
- Se cambió el diseño y la apariencia del control expandido.
- Correcciones de errores
- Se corrigió la parte inferior de GCKUICastContainerViewController en el iPhone X.
- Se solucionó el problema de reconexión cuando el SO realiza actividades de red extensas.
- Se corrigió una falla en la inicialización de la etiqueta de accesibilidad con GCKUICastButton.
23 de abril de 2019
Web Receiver
- Se introdujo la compatibilidad alfa con las transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se actualizó la IU para admitir transmisiones en vivo, incluido el indicador de transmisión en vivo.
- Se agregó el campo mediaCategory al estado de los medios para indicar si un medio es un video, un audio o una foto.
- Correcciones de errores
- Se corrigió el uso del valor de devolución de playbackConfig.segmentHandler.
Biblioteca de Media Player
- Se agregó compatibilidad con el códec HEVC a HLS en MPL.
Web Sender
- Se introdujo la compatibilidad alfa con las transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregó compatibilidad con anuncios. Para obtener más información, consulta la guía para desarrolladores.
- Se agregó RemotePlayerController.skipAd() para los anuncios que se pueden omitir.
Android Sender 16.2.0
- Se introdujo la compatibilidad alfa con las transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregaron nuevas estructuras de datos y atributos para el estado de la transmisión en vivo.
- Se agregaron claves nuevas de MediaMetadata.
- Se agregaron los siguientes comandos de contenido multimedia para transmisiones en vivo:
- RemoteMediaClient#load(MediaLoadRequestData)
- RemoteMediaClient#seek(MediaSeekOptions)
- Se mejoró la IU del controlador expandido para admitir transmisiones en vivo:
- Se agregó compatibilidad con transmisiones en vivo a los widgets de la IU del control expandido.
- Se cambió el diseño y la apariencia del control expandido.
- Se introdujo el widget CastSeekBar compatible con transmisiones en vivo para reemplazar el SeekBar nativo.
- Se modificó ExpandedControllerActivity para usar CastSeekBar en lugar de SeekBar para la compatibilidad con transmisiones en vivo. ExpandedControllerActivity#getSeekBar() ahora está obsoleto y devolverá una instancia ficticia.
- Se agregó un nuevo estado del reproductor MediaStatus#PLAYER_STATE_LOADING:
- Cuando el receptor web comienza a cargar el contenido multimedia, la propiedad playerState de MediaStatus se establece en MediaStatus#PLAYER_STATE_LOADING hasta que comienza a almacenar en búfer o reproducir contenido.
- En la mayoría de los casos, la app controla este estado de la misma manera en que controlaba MediaStatus#PLAYER_STATE_BUFFERING.
- Los estados de carga y almacenamiento en búfer no siempre son intercambiables.
- Mientras se carga, el Web Receiver aún no resolvió toda la información de los medios, por lo que la única información de los medios disponible es la que estaba presente en la solicitud de carga de medios del remitente.
- Mientras se almacena en búfer, la información de los medios puede contener información adicional que resuelve el receptor.
- Se modificó MediaMetadata para admitir audiolibros:
- Se agregaron claves nuevas de MediaMetadata.
- Se agregó un nuevo tipo de metadatos para los audiolibros.
25 de marzo de 2019
Web Receiver
-
Se reemplazó el uso de
document.registerElement()
porcustomElements.define()
para que el SDK de Web Receiver sea compatible con las versiones más recientes de la plataforma de Cast. -
MediaStatus.breakStatus
ahora devuelve un objeto vacío cuando hay pausas publicitarias en el contenido, pero no se está reproduciendo ninguna. - Se corrigió un problema con el análisis de etiquetas VAST intercaladas.
Biblioteca de Media Player
- Se solucionó el problema de retraso de aproximadamente 20 s al cambiar de pista de audio.
13 de febrero de 2019
Web Receiver
- Se corrigió la aparición repentina del botón Omitir anuncio en la IU táctil.
- Se corrigió la visualización de la información de los descansos en el control remoto.
Biblioteca de Media Player
- Se corrigió un problema relacionado con el manejo de licenseUrl para el contenido multimedia precargado.
5 de febrero de 2019
iOS Sender v4.3.5
- Se agregó compatibilidad con los metadatos de audiolibros. Consulta GCKMediaMetadata.h para obtener más detalles.
- Establece el valor correcto para static_framework en el podspec.
- Divide styleAttributes para la barra de navegación y la barra de herramientas en el controlador de conexión.
- Correcciones de errores
- Se corrigió una falla que se producía en ciertas inicializaciones de bases de datos fallidas.
- Se solucionó un problema con la barra de volumen del Web Receiver durante las llamadas telefónicas entrantes o los sonidos de alarma.
- Se corrigió la llamada redundante a ciertos métodos de delegado durante la detección.
- Se corrigió un problema por el que no se borraba la lista de la cola de medios después de que terminaba de reproducirse el último elemento de la cola.
- No se permite mostrar dispositivos cercanos no accesibles cuando la red no está disponible.
- Se inhabilitó el control deslizante de volumen en el controlador de vista del dispositivo para los dispositivos en los que no se puede controlar el volumen.