Classe GCKSessionManager

Riferimento al corso GCKSessionManager

Panoramica

Un corso che gestisce le sessioni

Il metodo startSessionWithDevice: (GCKSessionManager) viene utilizzato per creare una nuova sessione con un GCKDevice specificato. Il gestore di sessioni utilizza i GCKDeviceProvider per quel tipo di dispositivo per costruire un nuovo oggetto GCKSession a cui delega tutte le richieste di sessione.

GCKSessionManager gestisce la ripresa automatica delle sessioni sospese (ovvero, le sessioni che sono state terminate quando l'applicazione è stata in background o nel caso in cui l'applicazione si sia arrestata in modo anomalo o sia stata forzata dall'utente). Quando l'applicazione riprende o si riavvia, il gestore della sessione attende un breve periodo di tempo affinché il fornitore del dispositivo della sessione sospesa riconosca di nuovo il dispositivo e, in caso affermativo, tenterà di riconnettersi a tale dispositivo e ristabilire automaticamente la sessione.

Se l'applicazione ha creato un GCKUICastButton senza fornire un target e un selettore, se un utente tocca il pulsante viene visualizzata la finestra di dialogo predefinita Trasmetti e avvia e interrompe automaticamente le sessioni in base alla selezione dell'utente o alla disconnessione di un dispositivo. Tuttavia, se l'applicazione fornisce una propria UI per la finestra di dialogo di selezione/controllo dei dispositivi, deve utilizzare GCKSessionManager direttamente per creare e controllare le sessioni.

Indipendentemente dal fatto che l'applicazione utilizzi GCKSessionManager per controllare le sessioni, può collegare un GCKSessionManagerListener per ricevere notifiche sugli eventi delle sessioni e anche per KVO per monitorare la proprietà connectionState per monitorare lo stato attuale del ciclo di vita delle sessioni.

Since
3,0

Eredita NSObject.

Riepilogo del metodo dell'istanza

(instancetype) - init
 L'inizializzazionere predefinito non è disponibile. Altro...
 
(BOOL) - startSessionWithDevice:
 Avvia una nuova sessione con il dispositivo specificato. Altro...
 
(BOOL) - suspendSessionWithReason:
 Sospende la sessione corrente. Altro...
 
(BOOL) - endSession
 Termina la sessione corrente. Altro...
 
(BOOL) - endSessionAndStopCasting:
 Termina la sessione corrente, interrompendo la trasmissione. Altro...
 
(BOOL) - hasConnectedSession
 Verifica se una sessione è attualmente gestita da questo gestore di sessioni ed è attualmente connessa. Altro...
 
(BOOL) - hasConnectedCastSession
 Verifica se una sessione di trasmissione è attualmente gestita da questo gestore di sessioni ed è attualmente collegata. Altro...
 
(void) - addListener:
 Aggiunge un listener per la ricezione delle notifiche. Altro...
 
(void) - removeListener:
 Rimuove un listener precedentemente aggiunto con addListener:. Altro...
 

Riepilogo proprietà

GCKSessioncurrentSession
 La sessione corrente, se presente. Altro...
 
GCKCastSessioncurrentCastSession
 La sessione di trasmissione corrente, se presente. Altro...
 
GCKConnectionState connectionState
 Lo stato attuale della connessione di sessione. Altro...
 

Dettaglio metodo

- (instancetype) init

L'inizializzazionere predefinito non è disponibile.

- (BOOL) startSessionWithDevice: (GCKDevice *)  device

Avvia una nuova sessione con il dispositivo specificato.

Questa è un'operazione asincrona.

Parameters
deviceThe device to use for this session.
Valori restituiti
YES se l'operazione è stata avviata correttamente, NO se è stata stabilita una sessione o se non è stato possibile avviarla.
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

Sospende la sessione corrente.

Questa è un'operazione asincrona.

Parameters
reasonThe reason for the suspension.
Valori restituiti
YES se l'operazione è stata avviata correttamente, NO se non è stata stabilita alcuna sessione o se non è stato possibile avviarla.
- (BOOL) endSession

Termina la sessione corrente.

Questa è un'operazione asincrona.

Valori restituiti
YES se l'operazione è stata avviata correttamente, NO se non è stata stabilita alcuna sessione o se non è stato possibile avviarla.
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

Termina la sessione corrente, interrompendo la trasmissione.

Questa è un'operazione asincrona.

Parameters
stopCastingWhether casting of content on the receiver should be stopped when the session is ended.
Valori restituiti
YES se l'operazione è stata avviata correttamente, NO se non è stata stabilita alcuna sessione o se non è stato possibile avviarla.
- (BOOL) hasConnectedSession

Verifica se una sessione è attualmente gestita da questo gestore di sessioni ed è attualmente connessa.

Sarà YES se lo stato della sessione è GCKConnectionStateConnected.

- (BOOL) hasConnectedCastSession

Verifica se una sessione di trasmissione è attualmente gestita da questo gestore di sessioni ed è attualmente collegata.

Questa impostazione sarà YES se lo stato della sessione è GCKConnectionStateConnected e la sessione è una sessione di trasmissione.

- (void) addListener: (id< GCKSessionManagerListener >)  listener

Aggiunge un listener per la ricezione delle notifiche.

Parameters
listenerThe listener to add.
- (void) removeListener: (id< GCKSessionManagerListener >)  listener

Rimuove un listener precedentemente aggiunto con addListener:.

Parameters
listenerThe listener to remove.

Dettaglio proprietà

- (GCKSession*) currentSession
readnonatomicstrong

La sessione corrente, se presente.

- (GCKCastSession*) currentCastSession
readnonatomicstrong

La sessione di trasmissione corrente, se presente.

- (GCKConnectionState) connectionState
readnonatomicassign

Lo stato attuale della connessione di sessione.