Informações gerais
Uma classe que gerencia sessões.
O método startSessionWithDevice: (GCKSessionManager) é usado para criar uma nova sessão com um determinado GCKDevice. O gerenciador de sessões usa o GCKDeviceProvider desse tipo de dispositivo para criar um novo objeto GCKSession, que delega todas as solicitações de sessão.
GCKSessionManager processa a retomada automática de sessões suspensas, ou seja, a retomada de sessões que foram encerradas quando o aplicativo foi para o segundo plano ou caso o aplicativo tenha falhado ou sido encerrada à força pelo usuário. Quando o aplicativo é retomado ou reiniciado, o gerenciador de sessões aguarda um breve período para que o provedor do dispositivo da sessão suspensa descubra o dispositivo novamente e, se isso acontecer, ele tentará se reconectar a esse dispositivo e restabelecer a sessão automaticamente.
Se o app tiver criado um GCKUICastButton sem fornecer um destino e um seletor, um toque do usuário no botão vai mostrar a caixa de diálogo padrão do Google Cast que vai iniciar e interromper automaticamente sessões com base na seleção ou desconexão do usuário de um dispositivo. No entanto, se o aplicativo estiver fornecendo a própria IU de caixa de diálogo de seleção/controle de dispositivos, ele precisará usar o GCKSessionManager diretamente para criar e controlar sessões.
Independentemente de o aplicativo usar ou não o GCKSessionManager para controlar sessões, ele pode anexar um GCKSessionManagerListener para ser notificado sobre eventos de sessão e também pode usar o KVO para monitorar a propriedade connectionState e acompanhar o estado atual do ciclo de vida da sessão.
- Como
- 3,0
Herda o NSObject.
| Resumo do método de instância | |
| (instancetype) | - init | 
| O inicializador padrão não está disponível.  Mais... | |
| (BOOL) | - startSessionWithDevice: | 
| Inicia uma nova sessão com o dispositivo especificado, usando as opções de sessão padrão que foram registradas para a categoria do dispositivo, se houver.  Mais... | |
| (BOOL) | - startSessionWithDevice:sessionOptions: | 
| Inicia uma nova sessão com o dispositivo e as opções fornecidos.  Mais... | |
| (BOOL) | - startSessionWithOpenURLOptions:sessionOptions: | 
| Tenta entrar ou iniciar uma sessão com opções fornecidas ao método UIApplicationDelegate::application:openURL:options:.  Mais... | |
| (BOOL) | - suspendSessionWithReason: | 
| Suspende a sessão atual.  Mais... | |
| (BOOL) | - endSession | 
| Encerra a sessão atual.  Mais... | |
| (BOOL) | - endSessionAndStopCasting: | 
| Encerra a sessão atual e interrompe a transmissão se um dispositivo remetente estiver conectado. Caso contrário, pode interromper opcionalmente a transmissão se vários dispositivos remetentes estiverem conectados.  Mais... | |
| (BOOL) | - hasConnectedSession | 
| Testa se uma sessão está sendo gerenciada por esse gerenciador de sessões e se está conectada no momento.  Mais... | |
| (BOOL) | - hasConnectedCastSession | 
| Testa se uma sessão do Google Cast está sendo gerenciada por esse gerenciador de sessões e se está conectada no momento.  Mais... | |
| (void) | - setDefaultSessionOptions:forDeviceCategory: | 
| Define as opções de sessão padrão para a categoria de dispositivo especificada.As opções de sessão são transmitidas ao método createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) quando o usuário seleciona um dispositivo na caixa de diálogo "Transmitir".  Mais... | |
| (nullable GCKSessionOptions *) | - defaultSessionOptionsForDeviceCategory: | 
| Recebe as opções de sessão padrão para determinada categoria de dispositivo.  Mais... | |
| (void) | - addListener: | 
| Adiciona um listener para receber notificações.  Mais... | |
| (void) | - removeListener: | 
| Remove um listener que foi adicionado anteriormente com addListener:.  Mais... | |
| Resumo da propriedade | |
| GCKSession * | currentSession | 
| A sessão atual, se houver.  Mais... | |
| GCKCastSession * | currentCastSession | 
| A sessão atual do Google Cast, se houver.  Mais... | |
| GCKConnectionState | connectionState | 
| O estado atual da conexão da sessão.  Mais... | |
Detalhes dos métodos
| - (instancetype) init | 
O inicializador padrão não está disponível.
| - (BOOL) startSessionWithDevice: | (GCKDevice *) | device | 
Inicia uma nova sessão com o dispositivo especificado, usando as opções de sessão padrão que foram registradas para a categoria do dispositivo, se houver.
Essa é uma operação assíncrona.
- Parameters
- 
  device The device to use for this session. 
- Retorna
- YESse a operação tiver sido iniciada com sucesso,- NOse houver uma sessão estabelecida no momento ou se a operação não puder ser iniciada.
| - (BOOL) startSessionWithDevice: | (GCKDevice *) | device | |
| sessionOptions: | (nullable GCKSessionOptions *) | options | |
Inicia uma nova sessão com o dispositivo e as opções fornecidos.
Essa é uma operação assíncrona.
- Parameters
- 
  device The device to use for this session. options The options for this session, if any. May be nil.
- Retorna
- YESse a operação tiver sido iniciada com sucesso,- NOse houver uma sessão atualmente estabelecida ou se a operação não puder ser iniciada.
- Como
- 4,0
| - (BOOL) startSessionWithOpenURLOptions: | (GCKOpenURLOptions *) | openURLOptions | |
| sessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
Tenta entrar ou iniciar uma sessão com opções fornecidas ao método UIApplicationDelegate::application:openURL:options:.
Normalmente, essa é uma solicitação para participar de uma sessão de transmissão em um dispositivo específico que foi iniciada por outro app.
- Parameters
- 
  openURLOptions The options that were extracted from the URL. sessionOptions The options for this session, if any. May be nil.
- Retorna
- YESse a operação tiver sido iniciada com sucesso,- NOse houver uma sessão estabelecida no momento ou se as opções de openURL não tiverem as opções de transmissão necessárias.
- Como
- 4,0
| - (BOOL) suspendSessionWithReason: | (GCKConnectionSuspendReason) | reason | 
Suspende a sessão atual.
Essa é uma operação assíncrona.
- Parameters
- 
  reason The reason for the suspension. 
- Retorna
- YESse a operação tiver sido iniciada com sucesso,- NOse não houver sessão estabelecida no momento ou se a operação não puder ser iniciada.
| - (BOOL) endSession | 
Encerra a sessão atual.
Essa é uma operação assíncrona.
- Retorna
- YESse a operação tiver sido iniciada com sucesso,- NOse não houver sessão estabelecida no momento ou se a operação não puder ser iniciada.
| - (BOOL) endSessionAndStopCasting: | (BOOL) | stopCasting | 
Encerra a sessão atual e interrompe a transmissão se um dispositivo remetente estiver conectado. Caso contrário, pode interromper opcionalmente a transmissão se vários dispositivos remetentes estiverem conectados.
Use o parâmetro stopCasting para indicar se a transmissão no receptor será interrompida quando a sessão terminar. Esse parâmetro só se aplica quando vários dispositivos emissores estão conectados. Por exemplo, o mesmo app é aberto em vários dispositivos emissores e cada dispositivo remetente tem uma sessão de transmissão ativa com o mesmo dispositivo receptor.
- Se você definir stopCastingcomoYES, o app receptor vai interromper a transmissão quando vários dispositivos estiverem conectados.
- Se stopCastingforNOe outros dispositivos tiverem uma sessão ativa, o receptor vai continuar tocando.
- Se apenas um dispositivo remetente estiver conectado, o app receptor vai interromper a transmissão da mídia e ignorar o valor stopCasting, mesmo que ele esteja definido comoNO.
- Parameters
- 
  stopCasting Whether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected. 
- Retorna
- YESse a operação para encerrar a sessão for iniciada,- NOse não houver sessão estabelecida no momento ou se a operação não puder ser iniciada.
| - (BOOL) hasConnectedSession | 
Testa se uma sessão está sendo gerenciada por esse gerenciador de sessões e se está conectada no momento.
Ele será YES se o estado da sessão for GCKConnectionStateConnected. 
| - (BOOL) hasConnectedCastSession | 
Testa se uma sessão do Google Cast está sendo gerenciada por esse gerenciador de sessões e se está conectada no momento.
Ele será YES se o estado da sessão for GCKConnectionStateConnected e a sessão for de transmissão. 
| - (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
| forDeviceCategory: | (NSString *) | category | |
Define as opções de sessão padrão para a categoria de dispositivo especificada.As opções de sessão são transmitidas ao método createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) quando o usuário seleciona um dispositivo na caixa de diálogo "Transmitir".
Nas sessões do Cast, as opções de sessão podem especificar qual aplicativo receptor será iniciado.
- Parameters
- 
  sessionOptions The session options. May be nilto remove any previously set options.category The device category. 
- Como
- 4,0
| - (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: | (NSString *) | category | 
Recebe as opções de sessão padrão para determinada categoria de dispositivo.
- Parameters
- 
  category The device category. 
- Retorna
- As opções de sessão padrão, ou nilse nenhuma.
- Como
- 4,0
| - (void) addListener: | (id< GCKSessionManagerListener >) | listener | 
Adiciona um listener para receber notificações.
O listener adicionado é fraco e precisa ser mantido para evitar desalocação inesperada.
- Parameters
- 
  listener The listener to add. 
| - (void) removeListener: | (id< GCKSessionManagerListener >) | listener | 
Remove um listener que foi adicionado anteriormente com addListener:.
- Parameters
- 
  listener The listener to remove. 
Detalhe da propriedade
| 
 | readnonatomicstrong | 
A sessão atual, se houver.
| 
 | readnonatomicstrong | 
A sessão atual do Google Cast, se houver.
| 
 | readnonatomicassign | 
O estado atual da conexão da sessão.