Clase GCKUIMediaController

Referencia de la clase GCKUIMediaController

Descripción general

Es un controlador para las vistas de la IU que se usa con el fin de controlar o mostrar el estado de la reproducción de contenido multimedia en un receptor de transmisiones.

La aplicación que realiza la llamada registra sus controles de la IU relacionados con contenido multimedia con el controlador configurando las propiedades correspondientes. Luego, el controlador envía los comandos multimedia correspondientes al receptor para responder a los eventos táctiles de los controles, y actualiza los controles según la información de estado y los metadatos multimedia recibidos del receptor. El control habilita e inhabilita automáticamente los controles de la IU según corresponda para la sesión actual y el estado del reproductor multimedia. Además, inhabilita todos los controles mientras una solicitud está en curso.

Consulta GCKUIMediaControllerDelegate para ver el protocolo de delegado.

Desde
3.0

Hereda NSObject.

Resumen del método de instancia

(instancetype) - init
 Inicializa una instancia. Más...
 
(void) - bindLabel:toMetadataKey:
 Vincula una UILabel a una clave de metadatos. Más...
 
(void) - bindLabel:toMetadataKey:withFormatter:
 Vincula una UILabel a una clave de metadatos. Más...
 
(void) - bindTextView:toMetadataKey:
 Vincula un UITextView a una clave de metadatos. Más...
 
(void) - bindTextView:toMetadataKey:withFormatter:
 Vincula un UITextView a una clave de metadatos. Más...
 
(void) - bindImageView:toImageHints:
 Vincula una UIImageView a una instancia de GCKUIImageHints. Más...
 
(void) - bindControlView:toRewindForTime:
 Vincula un UIControl para retroceder la reproducción del elemento actual según el valor pasado como segundos. Más...
 
(void) - bindControlView:toForwardForTime:
 Vincula un UIControl para reenviar la reproducción del elemento actual según el valor pasado como segundos. Más...
 
(void) - unbindView:
 Desvincula la vista especificada. Más...
 
(void) - unbindAllViews
 Desvincula todas las vistas vinculadas. Más...
 
(GCKMediaRepeatMode- cycleRepeatMode
 Cambia el modo de repetición de la cola al siguiente modo del ciclo: More...
 
(void) - selectTracks
 Es un método conveniente para mostrar la IU de selección de pistas multimedia. Más...
 
(void) - skipAd
 Envía y supervisa la solicitud de omisión de anuncio. Más...
 

Resumen de la propiedad

id< GCKUIMediaControllerDelegatedelegate
 El delegado para recibir notificaciones de GCKUIMediaController. Más...
 
GCKSessionsession
 La sesión asociada con este controlador. Más...
 
BOOL mediaLoaded
 Indica si hay contenido multimedia cargado (o cargando) en la app receptora. Más...
 
BOOL hasCurrentQueueItem
 Indica si hay un elemento actual en la cola. Más...
 
BOOL hasLoadingQueueItem
 Indica si hay un elemento precargado en la cola. Más...
 
GCKMediaPlayerState lastKnownPlayerState
 Es el último estado conocido del reproductor multimedia. Más...
 
NSTimeInterval lastKnownStreamPosition
 La posición más reciente de la transmisión de contenido multimedia conocida. Más...
 
UIButton * playButton
 Un botón de "reproducir". Más...
 
UIButton * pauseButton
 Un botón de "pausa". Más...
 
GCKUIMultistateButtonplayPauseToggleButton
 Un botón de activación para reproducir y pausar Más...
 
GCKUIPlayPauseToggleControllerplayPauseToggleController
 Un control de activación para reproducir y pausar Más...
 
UIButton * stopButton
 Un botón de "detener" Más...
 
UIButton * forward30SecondsButton
 Un botón para avanzar 30 segundos en el elemento multimedia que se está reproduciendo. Más...
 
UIButton * rewind30SecondsButton
 Un botón para retroceder 30 segundos en el elemento multimedia que se está reproduciendo. Más...
 
UIButton * pauseQueueButton
 Un botón para pausar la reproducción en cola una vez que el elemento actual termina de reproducirse. Más...
 
UIButton * nextButton
 Un botón “siguiente” Más...
 
UIButton * previousButton
 Un botón "anterior". Más...
 
GCKUIMultistateButtonrepeatModeButton
 Un botón para alternar entre los modos de repetición de cola disponibles Más...
 
UISlider * streamPositionSlider
 Un control deslizante para mostrar y cambiar la posición de la transmisión actual Más...
 
UIProgressView * streamProgressView
 Una vista para mostrar el progreso actual de la transmisión. Más...
 
UILabel * streamPositionLabel
 Es una etiqueta para mostrar la posición de la transmisión actual, en minutos y segundos. Más...
 
UILabel * streamDurationLabel
 Es una etiqueta para mostrar la duración de la transmisión actual en minutos y segundos. Más...
 
UILabel * streamTimeRemainingLabel
 Es una etiqueta para mostrar el tiempo de transmisión restante (la duración menos la posición) en minutos y segundos. Más...
 
GCKUIStreamPositionControllerstreamPositionController
 Un controlador de posición de transmisión. Más...
 
GCKUIPlaybackRateControllerplaybackRateController
 Un controlador de velocidad de reproducción de transmisión Más...
 
BOOL displayTimeRemainingAsNegativeValue
 Indica si el tiempo de transmisión restante se mostrará como un valor negativo, por ejemplo, “-1:23:45”. Más...
 
BOOL hideStreamPositionControlsForLiveContent
 Indica si deben ocultarse los controles de posición de la transmisión (incluidos el control deslizante, la etiqueta de posición de la transmisión, la etiqueta de duración y la vista de progreso) para el contenido en vivo. Más...
 
UIButton * tracksButton
 Un botón para seleccionar pistas de audio o subtítulos. Más...
 
UILabel * smartSubtitleLabel
 Es una etiqueta para mostrar un subtítulo para el contenido multimedia cargado actualmente. Más...
 
UIActivityIndicatorView * mediaLoadingIndicator
 Es una vista del indicador de actividad para indicar que el contenido multimedia está en estado de carga. Más...
 
UILabel * skipAdLabel
 Es una etiqueta que muestra el tiempo que queda para que se pueda omitir el anuncio. Más...
 
UIButton * skipAdButton
 Un botón para omitir el anuncio actual. Más...
 

Detalle del método

- (instancetype) init

Inicializa una instancia.

- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key 

Vincula una UILabel a una clave de metadatos.

La vista mostrará el valor actual del campo de metadatos correspondiente.

Consulta GCKMediaMetadata para obtener una lista de las claves de metadatos predefinidas.

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

Vincula una UILabel a una clave de metadatos.

La vista mostrará el valor actual del campo de metadatos correspondiente.

Consulta GCKMediaMetadata para obtener una lista de las claves de metadatos predefinidas.

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key 

Vincula un UITextView a una clave de metadatos.

La vista mostrará el valor actual del campo de metadatos correspondiente.

Consulta GCKMediaMetadata para obtener una lista de las claves de metadatos predefinidas.

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

Vincula un UITextView a una clave de metadatos.

La vista mostrará el valor actual del campo de metadatos correspondiente.

Consulta GCKMediaMetadata para obtener una lista de las claves de metadatos predefinidas.

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindImageView: (UIImageView *)  imageView
toImageHints: (GCKUIImageHints *)  imageHints 

Vincula una UIImageView a una instancia de GCKUIImageHints.

Se usará el GCKUIImagePicker instalado actualmente a fin de seleccionar una imagen de los metadatos para la vista.

Parameters
imageViewThe UIImageView that will display the selected image.
imageHintsThe image hints.
- (void) bindControlView: (UIControl *)  control
toRewindForTime: (NSTimeInterval)  rewindSeconds 

Vincula un UIControl para retroceder la reproducción del elemento actual según el valor pasado como segundos.

La vista se actualizará según el estado GCKCastSession, el estado de reproducción remota y si es una transmisión en vivo. También se agrega un destino a UIControl para capturar el evento UIControlEventTouchUpInside. No agregues destinos de este tipo en la UIControl. Para capturar el evento, usa los métodos GCKUIMediaControllerDelegate.

Parameters
controlThe UI element that the user interacts with. Typically this would be an instance of UIButton.
rewindSecondsThe number of seconds to rewind the media.
- (void) bindControlView: (UIControl *)  control
toForwardForTime: (NSTimeInterval)  forwardSeconds 

Vincula un UIControl para reenviar la reproducción del elemento actual según el valor pasado como segundos.

La vista se actualizará según el estado GCKCastSession, el estado de reproducción remota y si es una transmisión en vivo. También se agrega un destino a UIControl para capturar el evento UIControlEventTouchUpInside. No agregues destinos de este tipo en la UIControl. Para capturar el evento, usa los métodos GCKUIMediaControllerDelegate.

Parameters
controlThe UI element that the user interacts with. Typically this would be an instance of UIButton.
forwardSecondsThe number of seconds to skip the media.
- (void) unbindView: (UIView *)  view

Desvincula la vista especificada.

Parameters
viewThe view to unbind.
- (void) unbindAllViews

Desvincula todas las vistas vinculadas.

- (GCKMediaRepeatMode) cycleRepeatMode

Cambia el modo de repetición de la cola al siguiente modo en el ciclo:

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

Devuelve
El nuevo modo de repetición.
- (void) selectTracks

Es un método conveniente para mostrar la IU de selección de pistas multimedia.

- (void) skipAd

Envía y supervisa la solicitud de omisión de anuncio.

Desde
4.3

Detalles de la propiedad

- (id<GCKUIMediaControllerDelegate>) delegate
readwritenonatomicweak

El delegado para recibir notificaciones de GCKUIMediaController.

- (GCKSession*) session
readnonatomicstrong

La sesión asociada con este controlador.

- (BOOL) mediaLoaded
readnonatomicassign

Indica si hay contenido multimedia cargado (o cargando) en la app receptora.

Si no hay ninguna sesión de transmisión activa, será NO.

- (BOOL) hasCurrentQueueItem
readnonatomicassign

Indica si hay un elemento actual en la cola.

- (BOOL) hasLoadingQueueItem
readnonatomicassign

Indica si hay un elemento precargado en la cola.

- (GCKMediaPlayerState) lastKnownPlayerState
readnonatomicassign

Es el último estado conocido del reproductor multimedia.

Si no hay ninguna sesión de transmisión activa, se mostrará como el estado del reproductor justo antes de que finalice la última sesión. Si no hubo una sesión anterior, esta será GCKMediaPlayerStateUnknown.

- (NSTimeInterval) lastKnownStreamPosition
readnonatomicassign

La posición más reciente de la transmisión de contenido multimedia conocida.

Si no hay ninguna sesión de transmisión activa, esta será la posición de transmisión del contenido multimedia justo antes de que finalice la última sesión. De lo contrario, será el kGCKInvalidTimeInterval.

- (UIButton*) playButton
readwritenonatomicweak

Un botón de "reproducir".

Cuando se presiona el botón, se inicia o reanuda la reproducción del contenido multimedia cargado en ese momento en el receptor. El botón se inhabilitará si la reproducción ya está en curso, si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UIButton*) pauseButton
readwritenonatomicweak

Un botón de "pausa".

Cuando se presiona el botón, se pausa la reproducción del contenido multimedia cargado en ese momento en el receptor. El botón se inhabilitará si el contenido multimedia cargado actualmente no admite la pausa, si la reproducción no se encuentra en curso, si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento.

- (GCKUIMultistateButton*) playPauseToggleButton
readwritenonatomicweak

Un botón de activación para reproducir y pausar

El llamador debe establecer íconos adecuados para los estados de los botones GCKUIButtonStatePlay, GCKUIButtonStatePlayLive y GCKUIButtonStatePause del botón, es decir, un ícono de "pausa" para el estado de reproducción, un ícono de "detener" para el estado de reproducción en vivo y un ícono de "reproducción" para el estado de pausa. El estado del botón se actualiza automáticamente para reflejar el estado de reproducción actual en la app receptora. Cuando se presiona el botón, se pausa o reanuda la reproducción del contenido multimedia cargado en ese momento en el receptor. El botón se inhabilitará si el contenido multimedia cargado actualmente no admite la pausa, si la reproducción no está en progreso o en pausa, si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento.

- (GCKUIPlayPauseToggleController*) playPauseToggleController
readwritenonatomicstrong

Un control de activación para reproducir y pausar

Se usa como sustituto de una IU de activar y desactivar de reproducción/pausa personalizada y proporcionada por la aplicación. Para obtener más información, consulta GCKUIPlayPauseToggleController.

Desde
3.4
- (UIButton*) stopButton
readwritenonatomicweak

Un botón de "detener"

Cuando se presiona el botón, se detiene la reproducción del contenido multimedia cargado en ese momento en el receptor. El botón se inhabilitará si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UIButton*) forward30SecondsButton
readwritenonatomicweak

Un botón para avanzar 30 segundos en el elemento multimedia que se está reproduciendo.

El botón se inhabilitará si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UIButton*) rewind30SecondsButton
readwritenonatomicweak

Un botón para retroceder 30 segundos en el elemento multimedia que se está reproduciendo.

El botón se inhabilitará si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UIButton*) pauseQueueButton
readwritenonatomicweak

Un botón para pausar la reproducción en cola una vez que el elemento actual termina de reproducirse.

- (UIButton*) nextButton
readwritenonatomicweak

Un botón “siguiente”

Cuando se presiona el botón, la reproducción avanza al siguiente elemento multimedia de la fila. El botón se inhabilitará si no se admite la operación, si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UIButton*) previousButton
readwritenonatomicweak

Un botón "anterior".

Cuando se presiona el botón, la reproducción se mueve al elemento multimedia anterior de la cola. El botón se inhabilitará si no se admite la operación, si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (GCKUIMultistateButton*) repeatModeButton
readwritenonatomicweak

Un botón para alternar entre los modos de repetición de cola disponibles

(Consulta GCKMediaRepeatMode). El llamador debe establecer íconos adecuados para los estados del botón GCKUIButtonStateRepeatOff, GCKUIButtonStateRepeatSingle, GCKUIButtonStateRepeatAll y GCKUIButtonStateShuffle del botón. El estado del botón se actualiza automáticamente para reflejar el modo de repetición de cola actual en la app receptora. Cuando se presiona el botón, se pasa al siguiente modo de repetición, en el siguiente orden:

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

El botón se inhabilitará si no hay ninguna sesión de transmisión activa en ese momento.

- (UISlider*) streamPositionSlider
readwritenonatomicweak

Un control deslizante para mostrar y cambiar la posición de la transmisión actual

Cuando el usuario cambia el valor del control deslizante, la posición de transmisión del contenido multimedia cargado actualmente se actualiza en el receptor. Mientras se reproduce contenido multimedia en el receptor, el valor del control deslizante se actualiza en tiempo real para reflejar la posición actual de la transmisión. El control deslizante se inhabilitará si el contenido multimedia cargado actualmente no admite la búsqueda, si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento.

- (UIProgressView*) streamProgressView
readwritenonatomicweak

Una vista para mostrar el progreso actual de la transmisión.

Mientras se reproduce contenido multimedia en el receptor, el valor de las vistas se actualiza en tiempo real para reflejar la posición actual de la transmisión. La vista se inhabilitará si el contenido multimedia cargado actualmente es una transmisión en vivo, si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UILabel*) streamPositionLabel
readwritenonatomicweak

Es una etiqueta para mostrar la posición de la transmisión actual, en minutos y segundos.

Si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento, la etiqueta mostrará un formato localizado de "--:--".

- (UILabel*) streamDurationLabel
readwritenonatomicweak

Es una etiqueta para mostrar la duración de la transmisión actual en minutos y segundos.

Si el contenido multimedia cargado no tiene duración (por ejemplo, si es una transmisión en vivo), si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento, la etiqueta muestra una forma localizada de "--:--".

- (UILabel*) streamTimeRemainingLabel
readwritenonatomicweak

Es una etiqueta para mostrar el tiempo de transmisión restante (la duración menos la posición) en minutos y segundos.

Si el contenido multimedia cargado no tiene duración (por ejemplo, si es una transmisión en vivo), si no hay contenido multimedia cargado o si no hay una sesión de transmisión activa en ese momento, la etiqueta muestra una forma localizada de "--:--".

- (GCKUIStreamPositionController*) streamPositionController
readwritenonatomicstrong

Un controlador de posición de transmisión.

Se usa como sustituto para una posición de transmisión o IU de búsqueda personalizada y proporcionada por la aplicación. Para obtener más información, consulta GCKUIStreamPositionController.

Desde
3.4
- (GCKUIPlaybackRateController*) playbackRateController
readwritenonatomicstrong

Un controlador de velocidad de reproducción de transmisión

Para obtener más información, consulta GCKUIPlaybackRateController.

Desde
4.0
- (BOOL) displayTimeRemainingAsNegativeValue
readwritenonatomicassign

Indica si el tiempo de transmisión restante se mostrará como un valor negativo, por ejemplo, “-1:23:45”.

De forma predeterminada, esta propiedad se configura en YES.

- (BOOL) hideStreamPositionControlsForLiveContent
readwritenonatomicassign

Indica si deben ocultarse los controles de posición de la transmisión (incluidos el control deslizante, la etiqueta de posición de la transmisión, la etiqueta de duración y la vista de progreso) para el contenido en vivo.

El valor predeterminado es NO.

Desde
4.0
- (UIButton*) tracksButton
readwritenonatomicweak

Un botón para seleccionar pistas de audio o subtítulos.

Cuando se presiona el botón, se muestra al usuario la IU de selección de pistas multimedia. El botón se inhabilitará si el contenido multimedia cargado actualmente no tiene ninguna pista multimedia seleccionable, si no hay contenido multimedia cargado o si no hay ninguna sesión de transmisión activa en ese momento.

- (UILabel*) smartSubtitleLabel
readwritenonatomicweak

Es una etiqueta para mostrar un subtítulo para el contenido multimedia cargado actualmente.

Si no hay ningún campo de subtítulos configurado explícitamente en los metadatos, el sello discográfico mostrará el campo más apropiado según el tipo de medio; por ejemplo, el nombre del estudio de una película o el nombre del artista de una pista de música.

- (UIActivityIndicatorView*) mediaLoadingIndicator
readwritenonatomicweak

Es una vista del indicador de actividad para indicar que el contenido multimedia está en estado de carga.

- (UILabel*) skipAdLabel
readwritenonatomicweak

Es una etiqueta que muestra el tiempo que queda para que se pueda omitir el anuncio.

Desde
4.3
- (UIButton*) skipAdButton
readwritenonatomicweak

Un botón para omitir el anuncio actual.

Desde
4.3