Clase GCKSession

Referencia de la clase GCKSession

Descripción general

Una clase base abstracta que representa una sesión con un dispositivo receptor

Las subclases deben implementar los métodos start (GCKSession(Protected)) y endWithAction: (GCKSession(Protected)), y deben llamar a los métodos de notificación apropiados (por ejemplo, notifyDidStartWithSessionID: (GCKSession(Protected))) para indicar los cambios correspondientes en el estado de la sesión. Las subclases también pueden implementar setDeviceVolume: (GCKSession), setDeviceMuted: (GCKSession) y remoteMediaClient si el dispositivo admite esas operaciones.

Se crea y controla una sesión con los métodos de sesión en GCKSessionManager, que usa el GCKDeviceProvider adecuado para crear la sesión y, luego, delega las solicitudes de sesión a ese objeto GCKSession.

Desde
3.0

Hereda NSObject.

Lo hereda GCKCastSession.

Resumen del método de instancia

(instancetype) - initWithDevice:traits:sessionID:
 Inicializa un nuevo objeto de sesión para el dispositivo determinado, con opciones predeterminadas. Más...
 
(instancetype) - initWithDevice:traits:sessionID:sessionOptions:
 Inicializa un nuevo objeto de sesión para el dispositivo determinado. Más...
 
(GCKRequest *) - setDeviceVolume:
 Establece el volumen del dispositivo. Más...
 
(GCKRequest *) - setDeviceMuted:
 Establece el estado de silencio del dispositivo. Más...
 
(void) - start
 Inicia la sesión. Más...
 
(void) - endWithAction:
 Finaliza la sesión con la acción especificada. Más...
 
(void) - notifyDidStartWithSessionID:
 Las subclases los llaman para notificar al framework que se inició la sesión. Más...
 
(void) - notifyDidFailToStartWithError:
 Las subclases los llaman para notificar al framework que no se pudo iniciar la sesión. Más...
 
(void) - notifyDidEndWithError:willTryToResume:
 Las subclases los llaman para notificar al framework que finalizó la sesión. Más...
 
(void) - notifyDidReceiveDeviceVolume:muted:
 Las subclases los llaman para notificar al framework que se recibió el volumen actualizado y el estado de silencio del dispositivo. Más...
 
(void) - notifyDidReceiveDeviceStatus:
 Las subclases los llaman para notificar al framework que se recibió el estado actualizado del dispositivo. Más...
 
(void) - notifyDidSuspendWithReason:
 Obsoleto; no usar; implementado como no-op. Más...
 
(void) - notifyDidResume
 Obsoleto; no usar; implementado como no-op. Más...
 

Resumen de la propiedad

GCKDevicedevice
 El dispositivo con el que está asociada esta sesión. Más...
 
NSString * sessionID
 El ID de sesión actual, si corresponde. Más...
 
GCKSessionOptions * sessionOptions
 Las opciones de sesión, si las hay. Más...
 
GCKConnectionState connectionState
 El estado de conexión de la sesión actual. Más...
 
BOOL suspended
 Una marca que indica si la sesión está suspendida actualmente. Más...
 
NSString * deviceStatusText
 Es el texto del estado actual del dispositivo. Más...
 
GCKSessionTraitstraits
 Las características de la sesión Más...
 
float currentDeviceVolume
 El volumen actual del dispositivo, en el rango [0.0, 1.0]. Más...
 
BOOL currentDeviceMuted
 Es el estado actual de silencio del dispositivo. Más...
 
GCKRemoteMediaClientremoteMediaClient
 Es el objeto GCKRemoteMediaClient que se puede usar para controlar la reproducción de contenido multimedia en esta sesión. Más...
 
GCKMediaMetadatamediaMetadata
 Los metadatos del contenido multimedia actuales, si corresponde Más...
 

Detalle del método

- (instancetype) initWithDevice: (GCKDevice *)  device
traits: (nullable GCKSessionTraits *)  traits
sessionID: (nullable NSString *)  sessionID 

Inicializa un nuevo objeto de sesión para el dispositivo determinado, con opciones predeterminadas.

Parameters
deviceThe device.
traitsThe session traits.
sessionIDThe session ID of an existing session, if this object will be used to resume a session; otherwise nil if it will be used to start a new session.
- (instancetype) initWithDevice: (GCKDevice *)  device
traits: (nullable GCKSessionTraits *)  traits
sessionID: (nullable NSString *)  sessionID
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

Inicializa un nuevo objeto de sesión para el dispositivo determinado.

Parameters
deviceThe device.
traitsThe session traits.
sessionIDThe session ID of an existing session, if this object will be used to resume a session; otherwise nil if it will be used to start a new session.
sessionOptionsThe session options, if any; otherwise nil.
Desde
4.0
- (GCKRequest *) setDeviceVolume: (float)  volume

Establece el volumen del dispositivo.

Esta es una operación asíncrona. La implementación predeterminada es una no-op que falla en la solicitud con un error GCKErrorCodeUnsupportedFeature.

Parameters
volumeThe new volume.
Devuelve
Un objeto GCKRequest para hacer un seguimiento de la solicitud.
Desde
3.4. En versiones anteriores del framework, este método mostraba void.
- (GCKRequest *) setDeviceMuted: (BOOL)  muted

Establece el estado de silencio del dispositivo.

Esta es una operación asíncrona. La implementación predeterminada es una no-op que falla en la solicitud con un error GCKErrorCodeUnsupportedFeature.

Parameters
mutedThe new mute state.
Devuelve
Un objeto GCKRequest para hacer un seguimiento de la solicitud.
Desde
3.4. En versiones anteriores del framework, este método mostraba void.
- (void) start

Inicia la sesión.

Esta es una operación asíncrona. Debe ser anulada por subclases.

Proporcionado por la categoría GCKSession(Protected)

- (void) endWithAction: (GCKSessionEndAction action

Finaliza la sesión con la acción especificada.

Esta es una operación asíncrona. Debe ser anulada por subclases.

Parameters
actionThe action to take when ending the session; see GCKSessionEndAction for more details.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidStartWithSessionID: (NSString *)  sessionID

Las subclases los llaman para notificar al framework que se inició la sesión.

Parameters
sessionIDThe session's unique ID.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidFailToStartWithError: (GCKError *)  error

Las subclases los llaman para notificar al framework que no se pudo iniciar la sesión.

Parameters
errorThe error that occurred.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidEndWithError: (nullable NSError *)  error
willTryToResume: (BOOL)  willTryToResume 

Las subclases los llaman para notificar al framework que finalizó la sesión.

Parameters
errorThe error that caused the session to end, if any. Should be nil if the session was ended intentionally.
willTryToResumeWhether the session will try to resume itself automatically.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidReceiveDeviceVolume: (float)  volume
muted: (BOOL)  muted 

Las subclases los llaman para notificar al framework que se recibió el volumen actualizado y el estado de silencio del dispositivo.

Parameters
volumeThe device's current volume. Must be in the range [0, 1.0];
mutedThe device's current mute state.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidReceiveDeviceStatus: (nullable NSString *)  statusText

Las subclases los llaman para notificar al framework que se recibió el estado actualizado del dispositivo.

Parameters
statusTextThe new status.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidSuspendWithReason: (GCKConnectionSuspendReason reason

Este campo es obsoleto; no se debe usar; se implementó como no-ops.

Deprecated:
No llames.

Proporcionado por la categoría GCKSession(Protected)

- (void) notifyDidResume

Este campo es obsoleto; no se debe usar; se implementó como no-ops.

Deprecated:
No llames.

Proporcionado por la categoría GCKSession(Protected)

Detalles de la propiedad

- (GCKDevice*) device
readnonatomicstrong

El dispositivo con el que está asociada esta sesión.

- (NSString*) sessionID
readnonatomiccopy

El ID de sesión actual, si corresponde.

- (GCKSessionOptions*) sessionOptions
readnonatomicstrong

Las opciones de sesión, si las hay.

Desde
4.0
- (GCKConnectionState) connectionState
readnonatomicassign

El estado de conexión de la sesión actual.

- (BOOL) suspended
readnonatomicassign

Una marca que indica si la sesión está suspendida actualmente.

Deprecated:
GCKSession ya no admite el estado de suspensión. Si es necesario, mueve esta funcionalidad a una subclase.
- (NSString*) deviceStatusText
readnonatomiccopy

Es el texto del estado actual del dispositivo.

- (GCKSessionTraits*) traits
readnonatomiccopy

Las características de la sesión

- (float) currentDeviceVolume
readnonatomicassign

El volumen actual del dispositivo, en el rango [0.0, 1.0].

- (BOOL) currentDeviceMuted
readnonatomicassign

Es el estado actual de silencio del dispositivo.

- (GCKRemoteMediaClient*) remoteMediaClient
readnonatomicstrong

Es el objeto GCKRemoteMediaClient que se puede usar para controlar la reproducción de contenido multimedia en esta sesión.

Es nil antes de que comience la sesión o si la sesión no es compatible con la API de GCKRemoteMediaClient. Las subclases que proporcionan una interfaz GCKRemoteMediaClient deben anular el método get.

- (GCKMediaMetadata*) mediaMetadata
readnonatomicstrong

Los metadatos del contenido multimedia actuales, si corresponde

Será nil si la sesión no admite el espacio de nombres multimedia o si no hay contenido multimedia cargado en la app receptora.