Classe GCKSession

Referência da classe GCKSession

Visão geral

Uma classe base abstrata que representa uma sessão com um dispositivo receptor.

As subclasses precisam implementar os métodos start (GCKSession(Protected)), endAndStopCasting: (GCKSession(Protected)), suspendWithReason: (GCKSession(Protected)) e resume (GCKSession(Protected)) e chamar os métodos de notificação adequados (por exemplo, notifyDidStartWithSessionID: (GCKSession(Protected))) para indicar as mudanças correspondentes no estado da sessão. As subclasses também podem implementar setDeviceVolume: (GCKSession), setDeviceMuted: (GCKSession) e remoteMediaClient se o dispositivo for compatível com essas operações.

Uma sessão é criada e controlada usando os métodos de sessão em GCKSessionManager, que usa o GCKDeviceProvider apropriado para criar a sessão e delega as solicitações de sessão a esse objeto GCKSession.

Desde
3.0

Herda o NSObject.

Herdado por GCKCastSession.

Resumo do método de instância

(instancetype) - initWithDevice:traits:sessionID:
 Inicializa um novo objeto de sessão para o dispositivo especificado. Mais...
 
(GCKRequest *) - setDeviceVolume:
 Define o volume do dispositivo. Mais...
 
(GCKRequest *) - setDeviceMuted:
 Define o estado de silêncio do dispositivo. Mais...
 
(void) - start
 Inicia a sessão. Mais...
 
(void) - endAndStopCasting:
 Encerra a sessão. Mais...
 
(void) - suspendWithReason:
 Suspende a sessão pelo motivo especificado. Mais...
 
(void) - resume
 Retoma a sessão. Mais...
 
(void) - notifyDidStartWithSessionID:
 Chamado por subclasses para notificar o framework de que a sessão foi iniciada. Mais...
 
(void) - notifyDidFailToStartWithError:
 Chamado por subclasses para notificar o framework de que a sessão não foi iniciada. Mais...
 
(void) - notifyDidResume
 Chamado por subclasses para notificar o framework de que a sessão foi retomada. Mais...
 
(void) - notifyDidSuspendWithReason:
 Chamado por subclasses para notificar o framework de que a sessão foi suspensa. Mais...
 
(void) - notifyDidEndWithError:
 Chamado por subclasses para notificar o framework de que a sessão terminou. Mais...
 
(void) - notifyDidReceiveDeviceVolume:muted:
 Chamado por subclasses para notificar o framework de que o volume atualizado do dispositivo e o estado de mudo foram recebidos do dispositivo. Mais...
 
(void) - notifyDidReceiveDeviceStatus:
 Chamado por subclasses para notificar o framework de que um status atualizado foi recebido do dispositivo. Mais...
 

Resumo da propriedade

GCKDevicedevice
 O dispositivo associado a esta sessão. Mais...
 
NSString * sessionID
 O ID da sessão atual, se houver. Mais...
 
GCKConnectionState connectionState
 O estado atual da conexão da sessão. Mais...
 
BOOL suspended
 Uma flag que indica se a sessão está suspensa no momento. Mais...
 
NSString * deviceStatusText
 O texto do status atual do dispositivo. Mais...
 
GCKSessionTraitstraits
 As características da sessão. Mais...
 
float currentDeviceVolume
 O volume do dispositivo atual, no intervalo [0.0, 1.0]. Mais...
 
BOOL currentDeviceMuted
 O estado de mudo do dispositivo atual. Mais...
 
GCKRemoteMediaClientremoteMediaClient
 O objeto GCKRemoteMediaClient que pode ser usado para controlar a reprodução de mídia nessa sessão. Mais...
 
GCKMediaMetadatamediaMetadata
 Os metadados de mídia atuais, se houver. Mais...
 

Detalhes do método

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

Inicializa um novo objeto de sessão para o dispositivo especificado.

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

Define o volume do dispositivo.

Essa é uma operação assíncrona. A implementação padrão é uma operação nula que falha na solicitação com um erro GCKErrorCodeUnsupportedFeature.

Parameters
volumeThe new volume.
Retorna
Um objeto GCKRequest para rastrear a solicitação.
Desde
3.4. Em versões anteriores do framework, esse método retornava void.
- (GCKRequest *) setDeviceMuted: (BOOL)  muted

Define o estado de silêncio do dispositivo.

Essa é uma operação assíncrona. A implementação padrão é uma operação nula que falha na solicitação com um erro GCKErrorCodeUnsupportedFeature.

Parameters
mutedThe new mute state.
Retorna
Um objeto GCKRequest para rastrear a solicitação.
Desde
3.4. Em versões anteriores do framework, esse método retornava void.
- (void) start

Inicia a sessão.

Essa é uma operação assíncrona. Precisa ser substituído por subclasses.

Fornecido pela categoria GCKSession(Protected).

- (void) endAndStopCasting: (BOOL)  stopCasting

Encerra a sessão.

Essa é uma operação assíncrona. Precisa ser substituído por subclasses.

Parameters
stopCastingWhether to stop casting content to the receiver.

Fornecido pela categoria GCKSession(Protected).

- (void) suspendWithReason: (GCKConnectionSuspendReason reason

Suspende a sessão pelo motivo especificado.

Essa é uma operação assíncrona. Precisa ser substituído por subclasses.

Fornecido pela categoria GCKSession(Protected).

- (void) resume

Retoma a sessão.

Essa é uma operação assíncrona. Precisa ser substituído por subclasses.

Fornecido pela categoria GCKSession(Protected).

- (void) notifyDidStartWithSessionID: (NSString *)  sessionID

Chamado por subclasses para notificar o framework de que a sessão foi iniciada.

Parameters
sessionIDThe session's unique ID.

Fornecido pela categoria GCKSession(Protected).

- (void) notifyDidFailToStartWithError: (NSError *)  error

Chamado por subclasses para notificar o framework de que a sessão não foi iniciada.

Parameters
errorThe error that occurred.

Fornecido pela categoria GCKSession(Protected).

- (void) notifyDidResume

Chamado por subclasses para notificar o framework de que a sessão foi retomada.

Fornecido pela categoria GCKSession(Protected).

- (void) notifyDidSuspendWithReason: (GCKConnectionSuspendReason reason

Chamado por subclasses para notificar o framework de que a sessão foi suspensa.

Parameters
reasonThe reason for the suspension.

Fornecido pela categoria GCKSession(Protected).

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

Chamado por subclasses para notificar o framework de que a sessão terminou.

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

Fornecido pela categoria GCKSession(Protected).

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

Chamado por subclasses para notificar o framework de que o volume atualizado do dispositivo e o estado de mudo foram recebidos do dispositivo.

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

Fornecido pela categoria GCKSession(Protected).

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

Chamado por subclasses para notificar o framework de que um status atualizado foi recebido do dispositivo.

Parameters
statusTextThe new status.

Fornecido pela categoria GCKSession(Protected).

Detalhes da propriedade

- (GCKDevice*) device
readnonatomicstrong

O dispositivo associado a esta sessão.

- (NSString*) sessionID
readnonatomiccopy

O ID da sessão atual, se houver.

- (GCKConnectionState) connectionState
readnonatomicassign

O estado atual da conexão da sessão.

- (BOOL) suspended
readnonatomicassign

Uma flag que indica se a sessão está suspensa no momento.

- (NSString*) deviceStatusText
readnonatomiccopy

O texto do status atual do dispositivo.

- (GCKSessionTraits*) traits
readnonatomiccopy

As características da sessão.

- (float) currentDeviceVolume
readnonatomicassign

O volume do dispositivo atual, no intervalo [0.0, 1.0].

- (BOOL) currentDeviceMuted
readnonatomicassign

O estado de mudo do dispositivo atual.

- (GCKRemoteMediaClient*) remoteMediaClient
readnonatomicstrong

O objeto GCKRemoteMediaClient que pode ser usado para controlar a reprodução de mídia nessa sessão.

É nil antes do início da sessão ou se ela não for compatível com a API GCKRemoteMediaClient. As subclasses que fornecem uma interface GCKRemoteMediaClient precisam substituir o método getter.

- (GCKMediaMetadata*) mediaMetadata
readnonatomicstrong

Os metadados de mídia atuais, se houver.

Será nil se a sessão não for compatível com o namespace de mídia ou se nenhuma mídia estiver carregada no receptor.