Clase GCKSession

Referencia de la clase GCKSession

Descripción general

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

Las subclases deben implementar los métodos start (GCKSession(Protected)), endAndStopCasting: (GCKSession(Protected)), suspendWithReason: (GCKSession(Protected)) y resume (GCKSession(Protected)), y deben llamar a los métodos notificadores 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 a ese objeto GCKSession.

Since
3.0

Hereda NSObject.

Heredada por GCKCastSession.

Resumen del método de instancia

(instancetype) - initWithDevice:traits:sessionID:
 Inicializa un objeto de sesión nuevo 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) - endAndStopCasting:
 Finaliza la sesión. Más...
 
(void) - suspendWithReason:
 Suspende la sesión por el motivo que se indica. Más...
 
(void) - resume
 Reanuda la sesión. Más...
 
(void) - notifyDidStartWithSessionID:
 Lo llaman las subclases para notificar al framework que se inició la sesión. Más...
 
(void) - notifyDidFailToStartWithError:
 Lo llaman las subclases para notificar al framework que la sesión no se inició. Más...
 
(void) - notifyDidResume
 Lo llaman las subclases para notificar al framework que se reanudó la sesión. Más...
 
(void) - notifyDidSuspendWithReason:
 Lo llaman las subclases para notificar al marco de trabajo que la sesión se suspendió. Más...
 
(void) - notifyDidEndWithError:
 Lo llaman las subclases para notificar al framework que la sesión finalizó. Más...
 
(void) - notifyDidReceiveDeviceVolume:muted:
 Lo llaman las subclases para notificar al marco de trabajo que el dispositivo actualizó el volumen y el estado de silencio del dispositivo. Más...
 
(void) - notifyDidReceiveDeviceStatus:
 Lo llaman las subclases para notificar al framework que se recibió el estado actualizado del dispositivo. 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 existe. Más...
 
GCKConnectionState connectionState
 Es el estado actual de la conexión de la sesión. Más...
 
BOOL suspended
 Indica si la sesión está suspendida. Más...
 
NSString * deviceStatusText
 Texto actual del estado del dispositivo Más...
 
GCKSessionTraitstraits
 Las características de la sesión. Más...
 
float currentDeviceVolume
 El volumen de dispositivo actual, en el rango [0.0, 1.0]. Más...
 
BOOL currentDeviceMuted
 Estado actual del dispositivo silenciado. Más...
 
GCKRemoteMediaClientremoteMediaClient
 El objeto GCKRemoteMediaClient que se puede usar para controlar la reproducción de contenido multimedia en esta sesión. Más...
 
GCKMediaMetadatamediaMetadata
 Los metadatos de medios actuales, si los hubiera. Más...
 

Detalle del método

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

Inicializa un objeto de sesión nuevo 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.
- (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 la solicitud con un error GCKErrorCodeUnsupportedFeature.

Parameters
volumeThe new volume.
Resultado que se muestra
Es un objeto GCKRequest para realizar un seguimiento de la solicitud.
Since
3.4; en versiones anteriores del marco de trabajo, 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 la solicitud con un error GCKErrorCodeUnsupportedFeature.

Parameters
mutedThe new mute state.
Resultado que se muestra
Es un objeto GCKRequest para realizar un seguimiento de la solicitud.
Since
3.4; en versiones anteriores del marco de trabajo, este método mostraba void.
- (void) start

Inicia la sesión.

Esta es una operación asíncrona. Deben ser anuladas por subclases.

Proporcionado por la categoría GCKSession(Protected).

- (void) endAndStopCasting: (BOOL)  stopCasting

Finaliza la sesión.

Esta es una operación asíncrona. Deben ser anuladas por subclases.

Parameters
stopCastingWhether to stop casting content to the receiver.

Proporcionado por la categoría GCKSession(Protected).

- (void) suspendWithReason: (GCKConnectionSuspendReason reason

Suspende la sesión por el motivo que se indica.

Esta es una operación asíncrona. Deben ser anuladas por subclases.

Proporcionado por la categoría GCKSession(Protected).

- (void) resume

Reanuda la sesión.

Esta es una operación asíncrona. Deben ser anuladas por subclases.

Proporcionado por la categoría GCKSession(Protected).

- (void) notifyDidStartWithSessionID: (NSString *)  sessionID

Lo llaman las subclases 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: (NSError *)  error

Lo llaman las subclases para notificar al framework que la sesión no se inició.

Parameters
errorThe error that occurred.

Proporcionado por la categoría GCKSession(Protected).

- (void) notifyDidResume

Lo llaman las subclases para notificar al framework que se reanudó la sesión.

Proporcionado por la categoría GCKSession(Protected).

- (void) notifyDidSuspendWithReason: (GCKConnectionSuspendReason reason

Lo llaman las subclases para notificar al marco de trabajo que la sesión se suspendió.

Parameters
reasonThe reason for the suspension.

Proporcionado por la categoría GCKSession(Protected).

- (void) notifyDidEndWithError: (NSError *__nullable)  error

Lo llaman las subclases para notificar al framework que la sesión finalizó.

Parameters
errorThe error that caused the session to end, if any. Should be nil if the session was ended intentionally.

Proporcionado por la categoría GCKSession(Protected).

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

Lo llaman las subclases para notificar al marco de trabajo que el dispositivo actualizó el volumen 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: (NSString *__nullable)  statusText

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

Parameters
statusTextThe new status.

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 existe.

- (GCKConnectionState) connectionState
readnonatomicassign

Es el estado actual de la conexión de la sesión.

- (BOOL) suspended
readnonatomicassign

Indica si la sesión está suspendida.

- (NSString*) deviceStatusText
readnonatomiccopy

Texto actual del estado del dispositivo

- (GCKSessionTraits*) traits
readnonatomiccopy

Las características de la sesión.

- (float) currentDeviceVolume
readnonatomicassign

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

- (BOOL) currentDeviceMuted
readnonatomicassign

Estado actual del dispositivo silenciado.

- (GCKRemoteMediaClient*) remoteMediaClient
readnonatomicstrong

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 esta no admite la API de GCKRemoteMediaClient. Las subclases que proporcionan una interfaz GCKRemoteMediaClient deben anular el método captador.

- (GCKMediaMetadata*) mediaMetadata
readnonatomicstrong

Los metadatos de medios actuales, si los hubiera.

Será nil si la sesión no admite el espacio de nombres multimedia o si no hay ningún contenido multimedia cargado actualmente en el receptor.