Panoramica
Un corso che gestisce le sessioni.
Il metodo startSessionWithDevice: (GCKSessionManager) viene utilizzato per creare una nuova sessione con un determinato GCKDevice. Il gestore delle sessioni utilizza l'GCKDeviceProvider per quel tipo di dispositivo per creare un nuovo oggetto GCKSession, a cui delegare tutte le richieste di sessione.
GCKSessionManager gestisce la ripresa automatica delle sessioni sospese, ovvero il ripristino di sessioni terminate quando l'applicazione è passata in background o nel caso in cui l'applicazione abbia subito un arresto anomalo o sia stata chiusa forzatamente dall'utente. Quando l'applicazione viene riavviata o riavviata, Gestione sessioni attenderà per un breve periodo di tempo prima che il fornitore del dispositivo della sessione sospesa lo rilevi nuovamente e, in caso affermativo, tenterà di riconnettersi a quel dispositivo e ristabilire automaticamente la sessione.
Se l'applicazione ha creato un GCKUICastButton senza fornire un target e un selettore, quando un utente tocca il pulsante viene visualizzata la finestra di dialogo Trasmetti predefinita, che avvia e interrompe automaticamente le sessioni in base alla selezione o alla disconnessione dell'utente da parte dell'utente. Se, tuttavia, l'applicazione fornisce la propria UI della finestra di dialogo di selezione/controllo del dispositivo, deve usare direttamente GCKSessionManager 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 di sessione. Inoltre, può utilizzare gli oggetti KVO per monitorare la proprietà connectionState e monitorare l'attuale stato del ciclo di vita della sessione.
- Dal
- 3,0
Eredita NSObject.
Riepilogo del metodo di istanza | |
(instancetype) | - init |
Inizializzatore predefinito non disponibile. Altro... | |
(BOOL) | - startSessionWithDevice: |
Avvia una nuova sessione con il dispositivo specificato, utilizzando le opzioni per le sessioni predefinite che erano state registrate per la categoria di dispositivo, se presenti. Altro... | |
(BOOL) | - startSessionWithDevice:sessionOptions: |
Avvia una nuova sessione con il dispositivo e le opzioni specificati. Altro... | |
(BOOL) | - startSessionWithOpenURLOptions:sessionOptions: |
Tentativi di partecipare o avviare una sessione con le opzioni fornite al metodo UIApplicationDelega::application:openURL:options:. Altro... | |
(BOOL) | - suspendSessionWithReason: |
Sospende la sessione corrente. Altro... | |
(BOOL) | - endSession |
Termina la sessione corrente. Altro... | |
(BOOL) | - endSessionAndStopCasting: |
Termina la sessione corrente e interrompe la trasmissione se è connesso un dispositivo mittente; in caso contrario, interrompe la trasmissione se sono connessi più dispositivi. Altro... | |
(BOOL) | - hasConnectedSession |
Verifica se una sessione è attualmente gestita da questo gestore delle sessioni ed è attualmente collegata. Altro... | |
(BOOL) | - hasConnectedCastSession |
Verifica se una sessione di trasmissione è attualmente gestita da questo gestore delle sessioni e se è connessa. Altro... | |
(void) | - setDefaultSessionOptions:forDeviceCategory: |
Consente di impostare le opzioni predefinite per le sessioni per la categoria di dispositivi specificata.Le opzioni relative alle sessioni vengono trasmesse al metodo createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) quando l'utente seleziona un dispositivo dalla finestra di dialogo Trasmetti. Altro... | |
(nullable GCKSessionOptions *) | - defaultSessionOptionsForDeviceCategory: |
Consente di acquisire le opzioni di sessione predefinite per una determinata categoria di dispositivi. Altro... | |
(void) | - addListener: |
Aggiunge un listener per la ricezione delle notifiche. Altro... | |
(void) | - removeListener: |
Rimuove un listener aggiunto in precedenza con addListener:. Altro... | |
Riepilogo proprietà | |
GCKSession * | currentSession |
L'eventuale sessione corrente. Altro... | |
GCKCastSession * | currentCastSession |
L'eventuale sessione di trasmissione corrente. Altro... | |
GCKConnectionState | connectionState |
Lo stato di connessione della sessione attuale. Altro... | |
Dettaglio metodo
- (instancetype) init |
Inizializzatore predefinito non disponibile.
- (BOOL) startSessionWithDevice: | (GCKDevice *) | device |
Avvia una nuova sessione con il dispositivo specificato, utilizzando le opzioni per le sessioni predefinite che erano state registrate per la categoria di dispositivo, se presenti.
Si tratta di un'operazione asincrona.
- Parameters
-
device The device to use for this session.
- Ritorni
YES
se l'operazione è stata avviata correttamente,NO
se esiste una sessione attualmente stabilita o se non è stato possibile avviare l'operazione.
- (BOOL) startSessionWithDevice: | (GCKDevice *) | device | |
sessionOptions: | (nullable GCKSessionOptions *) | options | |
Avvia una nuova sessione con il dispositivo e le opzioni specificati.
Si tratta di un'operazione asincrona.
- Parameters
-
device The device to use for this session. options The options for this session, if any. May be nil
.
- Ritorni
YES
se l'operazione è stata avviata correttamente,NO
se è già presente una sessione attualmente stabilita o se non è stato possibile avviare l'operazione.
- Dal
- 4,0
- (BOOL) startSessionWithOpenURLOptions: | (GCKOpenURLOptions *) | openURLOptions | |
sessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
Tentativi di partecipare o avviare una sessione con le opzioni fornite al metodo UIApplicationDelega::application:openURL:options:.
In genere si tratta di una richiesta per partecipare a una sessione di trasmissione esistente su un determinato dispositivo, avviata da un'altra app.
- Parameters
-
openURLOptions The options that were extracted from the URL. sessionOptions The options for this session, if any. May be nil
.
- Ritorni
YES
se l'operazione è stata avviata correttamente,NO
se è già stata stabilita una sessione o se le opzioni openURL non contengono le opzioni di trasmissione richieste.
- Dal
- 4,0
- (BOOL) suspendSessionWithReason: | (GCKConnectionSuspendReason) | reason |
Sospende la sessione corrente.
Si tratta di un'operazione asincrona.
- Parameters
-
reason The reason for the suspension.
- Ritorni
YES
se l'operazione è stata avviata correttamente,NO
se non è attualmente stabilita alcuna sessione o se non è stato possibile avviare l'operazione.
- (BOOL) endSession |
Termina la sessione corrente.
Si tratta di un'operazione asincrona.
- Ritorni
YES
se l'operazione è stata avviata correttamente,NO
se non è attualmente stabilita alcuna sessione o se non è stato possibile avviare l'operazione.
- (BOOL) endSessionAndStopCasting: | (BOOL) | stopCasting |
Termina la sessione corrente e interrompe la trasmissione se è connesso un dispositivo mittente; in caso contrario, interrompe la trasmissione se sono connessi più dispositivi.
Utilizza il parametro stopCasting
per indicare se la trasmissione sul ricevitore deve interrompersi al termine della sessione. Questo parametro si applica solo quando sono connessi più dispositivi di invio. Ad esempio, la stessa app è aperta su più dispositivi emittente e ogni dispositivo ha una sessione di trasmissione attiva con lo stesso dispositivo ricevente.
- Se imposti
stopCasting
suYES
, l'app del ricevitore smette di trasmettere quando sono connessi più dispositivi. - Se
stopCasting
èNO
e gli altri dispositivi hanno una sessione attiva, il destinatario continua a riprodurre. - Se è connesso un solo dispositivo mittente, l'app del destinatario interrompe la trasmissione dei contenuti multimediali e ignora il valore
stopCasting
, anche se è impostato suNO
.
- Parameters
-
stopCasting Whether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
- Ritorni
YES
se l'operazione per terminare la sessione è iniziata correttamente,NO
se non è attualmente stabilita alcuna sessione o se non è stato possibile avviare l'operazione.
- (BOOL) hasConnectedSession |
Verifica se una sessione è attualmente gestita da questo gestore delle sessioni ed è attualmente collegata.
Sarà YES
se lo stato della sessione è GCKConnectionStateConnection.
- (BOOL) hasConnectedCastSession |
Verifica se una sessione di trasmissione è attualmente gestita da questo gestore delle sessioni e se è connessa.
Sarà YES
se lo stato della sessione è GCKConnectionStateConnection e la sessione è una sessione di trasmissione.
- (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
forDeviceCategory: | (NSString *) | category | |
Consente di impostare le opzioni predefinite per le sessioni per la categoria di dispositivi specificata.Le opzioni relative alle sessioni vengono trasmesse al metodo createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) quando l'utente seleziona un dispositivo dalla finestra di dialogo Trasmetti.
Per le sessioni di trasmissione, le opzioni relative alla sessione consentono di specificare quale applicazione del ricevitore avviare.
- Parameters
-
sessionOptions The session options. May be nil
to remove any previously set options.category The device category.
- Dal
- 4,0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: | (NSString *) | category |
Consente di acquisire le opzioni di sessione predefinite per una determinata categoria di dispositivi.
- Parameters
-
category The device category.
- Ritorni
- Le opzioni predefinite per la sessione oppure
nil
se nessuna.
- Dal
- 4,0
- (void) addListener: | (id< GCKSessionManagerListener >) | listener |
Aggiunge un listener per la ricezione delle notifiche.
Il listener aggiunto è bloccato in modo debole e deve essere mantenuto per evitare una deallocation imprevista.
- Parameters
-
listener The listener to add.
- (void) removeListener: | (id< GCKSessionManagerListener >) | listener |
Rimuove un listener aggiunto in precedenza con addListener:.
- Parameters
-
listener The listener to remove.
Dettagli della proprietà
|
readnonatomicstrong |
L'eventuale sessione corrente.
|
readnonatomicstrong |
L'eventuale sessione di trasmissione corrente.
|
readnonatomicassign |
Lo stato di connessione della sessione attuale.