GCKSessionManager-Klasse

GCKSessionManager-Klassenreferenz

Überblick

Eine Klasse, die Sitzungen verwaltet.

Die Methode startSessionWithDevice: (GCKSessionManager) wird verwendet, um eine neue Sitzung mit einer bestimmten GCKDevice zu erstellen. Der Sitzungsmanager verwendet den GCKDeviceProvider für diesen Gerätetyp, um ein neues GCKSession-Objekt zu erstellen, an das er dann alle Sitzungsanfragen delegiert.

GCKSessionManager sorgt für die automatische Wiederaufnahme von angehaltenen Sitzungen (d. h. die Fortsetzung von Sitzungen, die beendet wurden, als die Anwendung in den Hintergrund ging, oder für den Fall, dass die Anwendung abgestürzt ist oder vom Nutzer zwangsweise beendet wurde). Wenn die Anwendung fortgesetzt oder neu gestartet wird, wartet der Sitzungsmanager eine kurze Zeit, bis der Geräteanbieter des Geräts der angehaltenen Sitzung das Gerät wieder erkennt. Ist dies der Fall, wird versucht, die Verbindung zum Gerät wiederherzustellen und die Sitzung automatisch wiederherzustellen.

Wenn die App eine GCKUICastButton erstellt hat, ohne ein Ziel und eine Auswahl anzugeben, kann der Nutzer durch Tippen auf die Schaltfläche das standardmäßige Streaming-Dialogfeld aufrufen und Sitzungen werden automatisch gestartet und beendet, je nachdem, ob der Nutzer ein Gerät ausgewählt hat oder die Verbindung zu einem Gerät getrennt wurde. Wenn die Anwendung jedoch ihre eigene Benutzeroberfläche für den Dialog zur Geräteauswahl/-steuerung bereitstellt, sollte die GCKSessionManager direkt zum Erstellen und Steuern von Sitzungen verwendet werden.

Unabhängig davon, ob die Anwendung die GCKSessionManager zur Steuerung von Sitzungen verwendet, kann sie einen GCKSessionManagerListener anhängen, um über Sitzungsereignisse informiert zu werden. Außerdem kann sie mithilfe von KVO das Attribut connectionState überwachen, um den aktuellen Lebenszyklusstatus der Sitzung zu verfolgen.

Seit
3,0

Übernimmt NSObject.

Übersicht über Instanzmethoden

(instancetype) - init
 Standardinitialisierer ist nicht verfügbar. Mehr...
 
(BOOL) - startSessionWithDevice:
 Startet auf dem jeweiligen Gerät eine neue Sitzung mit den Standardsitzungsoptionen, die gegebenenfalls für die Gerätekategorie registriert wurden. Mehr...
 
(BOOL) - startSessionWithDevice:sessionOptions:
 Startet eine neue Sitzung mit dem angegebenen Gerät und den angegebenen Optionen. Mehr...
 
(BOOL) - startSessionWithOpenURLOptions:sessionOptions:
 Versucht, einer Sitzung beizutreten oder diese zu starten mit Optionen, die der Methode UIApplicationDelegate::application:openURL:options: bereitgestellt wurden. Mehr...
 
(BOOL) - suspendSessionWithReason:
 Hält die aktuelle Sitzung an. Mehr...
 
(BOOL) - endSession
 Beendet die aktuelle Sitzung. Mehr...
 
(BOOL) - endSessionAndStopCasting:
 Beendet die aktuelle Sitzung und beendet das Streamen, wenn ein Sendergerät verbunden ist. Andernfalls wird das Streamen optional beendet, wenn mehrere Sendergeräte verbunden sind. Mehr...
 
(BOOL) - hasConnectedSession
 Testet, ob eine Sitzung derzeit von diesem Sitzungsmanager verwaltet wird und derzeit verbunden ist. Mehr...
 
(BOOL) - hasConnectedCastSession
 Testet, ob eine Streamingsitzung gerade von diesem Sitzungsmanager verwaltet wird und aktuell verbunden ist. Mehr...
 
(void) - setDefaultSessionOptions:forDeviceCategory:
 Legt die Standardsitzungsoptionen für die jeweilige Gerätekategorie fest.Die Sitzungsoptionen werden an die Methode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) übergeben, wenn der Nutzer ein Gerät im Cast-Dialogfeld auswählt. Mehr...
 
(nullable GCKSessionOptions *) - defaultSessionOptionsForDeviceCategory:
 Ruft die Standardsitzungsoptionen für eine bestimmte Gerätekategorie ab. Mehr...
 
(void) - addListener:
 Fügt einen Listener für den Empfang von Benachrichtigungen hinzu. Mehr...
 
(void) - removeListener:
 Entfernt einen Listener, der zuvor mit addListener: hinzugefügt wurde. Mehr...
 

Property-Zusammenfassung

GCKSessioncurrentSession
 Die aktuelle Sitzung, falls vorhanden. Mehr...
 
GCKCastSessioncurrentCastSession
 Die aktuelle Streamingsitzung, falls vorhanden. Mehr...
 
GCKConnectionState connectionState
 Der aktuelle Verbindungsstatus der Sitzung. Mehr...
 

Methodendetail

- (instancetype) init

Standardinitialisierer ist nicht verfügbar.

- (BOOL) startSessionWithDevice: (GCKDevice *)  device

Startet auf dem jeweiligen Gerät eine neue Sitzung mit den Standardsitzungsoptionen, die gegebenenfalls für die Gerätekategorie registriert wurden.

Dies ist ein asynchroner Vorgang.

Parameters
deviceThe device to use for this session.
Rückgaben
YES, wenn der Vorgang erfolgreich gestartet wurde, NO, wenn derzeit eine Sitzung eingerichtet ist oder der Vorgang nicht gestartet werden konnte.
- (BOOL) startSessionWithDevice: (GCKDevice *)  device
sessionOptions: (nullable GCKSessionOptions *)  options 

Startet eine neue Sitzung mit dem angegebenen Gerät und den angegebenen Optionen.

Dies ist ein asynchroner Vorgang.

Parameters
deviceThe device to use for this session.
optionsThe options for this session, if any. May be nil.
Rückgaben
YES, wenn der Vorgang erfolgreich gestartet wurde, NO, wenn aktuell eine Sitzung eingerichtet ist oder der Vorgang nicht gestartet werden konnte.
Seit
4,0
- (BOOL) startSessionWithOpenURLOptions: (GCKOpenURLOptions *)  openURLOptions
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

Versucht, einer Sitzung beizutreten oder diese zu starten mit Optionen, die der Methode UIApplicationDelegate::application:openURL:options: bereitgestellt wurden.

In der Regel ist das eine Anfrage zur Teilnahme an einer bestehenden Streamingsitzung auf einem bestimmten Gerät, die von einer anderen App initiiert wurde.

Parameters
openURLOptionsThe options that were extracted from the URL.
sessionOptionsThe options for this session, if any. May be nil.
Rückgaben
YES, wenn der Vorgang erfolgreich gestartet wurde, NO, wenn aktuell eine Sitzung eingerichtet ist, oder die openURL-Optionen enthalten nicht die erforderlichen Streamingoptionen.
Seit
4,0
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

Hält die aktuelle Sitzung an.

Dies ist ein asynchroner Vorgang.

Parameters
reasonThe reason for the suspension.
Rückgaben
YES, wenn der Vorgang erfolgreich gestartet wurde, NO, wenn derzeit keine Sitzung eingerichtet wurde oder der Vorgang nicht gestartet werden konnte.
- (BOOL) endSession

Beendet die aktuelle Sitzung.

Dies ist ein asynchroner Vorgang.

Rückgaben
YES, wenn der Vorgang erfolgreich gestartet wurde, NO, wenn derzeit keine Sitzung eingerichtet wurde oder der Vorgang nicht gestartet werden konnte.
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

Beendet die aktuelle Sitzung und beendet das Streamen, wenn ein Sendergerät verbunden ist. Andernfalls wird das Streamen optional beendet, wenn mehrere Sendergeräte verbunden sind.

Verwenden Sie den Parameter stopCasting, um anzugeben, ob das Streamen auf den Empfänger nach dem Ende der Sitzung beendet werden soll. Dieser Parameter gilt nur, wenn mehrere Absendergeräte verbunden sind. Dieselbe App ist beispielsweise auf mehreren Sendergeräten geöffnet und jedes Sendergerät hat eine aktive Streamingsitzung mit demselben Empfängergerät.

  • Wenn du stopCasting auf YES setzt, beendet die Empfänger-App das Streamen, wenn mehrere Geräte verbunden sind.
  • Wenn stopCasting den Wert NO hat und auf anderen Geräten eine aktive Sitzung läuft, spielt der Empfänger weiter.
  • Wenn nur ein Sendergerät verbunden ist, beendet die Empfänger-App das Streaming der Medien und ignoriert den stopCasting-Wert, auch wenn er auf NO gesetzt ist.
Parameters
stopCastingWhether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
Rückgaben
YES, wenn der Vorgang zum Beenden der Sitzung erfolgreich gestartet wurde, NO, wenn derzeit keine Sitzung erstellt wurde oder der Vorgang nicht gestartet werden konnte.
- (BOOL) hasConnectedSession

Testet, ob eine Sitzung derzeit von diesem Sitzungsmanager verwaltet wird und derzeit verbunden ist.

Der Wert ist YES, wenn der Sitzungsstatus „GCKConnectionStateConnected“ lautet.

- (BOOL) hasConnectedCastSession

Testet, ob eine Streamingsitzung gerade von diesem Sitzungsmanager verwaltet wird und aktuell verbunden ist.

Der Wert ist YES, wenn der Sitzungsstatus GCKConnectionStateConnected (GCKConnectionStateConnected) vorliegt und es sich bei der Sitzung um eine Streamingsitzung handelt.

- (void) setDefaultSessionOptions: (nullable GCKSessionOptions *)  sessionOptions
forDeviceCategory: (NSString *)  category 

Legt die Standardsitzungsoptionen für die jeweilige Gerätekategorie fest.Die Sitzungsoptionen werden an die Methode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) übergeben, wenn der Nutzer ein Gerät im Cast-Dialogfeld auswählt.

Bei Streamingsitzungen kann über die Sitzungsoptionen festgelegt werden, welche Empfänger-App gestartet werden soll.

Parameters
sessionOptionsThe session options. May be nil to remove any previously set options.
categoryThe device category.
Seit
4,0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: (NSString *)  category

Ruft die Standardsitzungsoptionen für eine bestimmte Gerätekategorie ab.

Parameters
categoryThe device category.
Rückgaben
Die Standardsitzungsoptionen oder nil, wenn keine verfügbar sind.
Seit
4,0
- (void) addListener: (id< GCKSessionManagerListener >)  listener

Fügt einen Listener für den Empfang von Benachrichtigungen hinzu.

Der hinzugefügte Listener ist schwach gehalten und sollte beibehalten werden, um eine unerwartete Zuordnung zu vermeiden.

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

Entfernt einen Listener, der zuvor mit addListener: hinzugefügt wurde.

Parameters
listenerThe listener to remove.

Objektdetails

- (GCKSession*) currentSession
readnonatomicstrong

Die aktuelle Sitzung, falls vorhanden.

- (GCKCastSession*) currentCastSession
readnonatomicstrong

Die aktuelle Streamingsitzung, falls vorhanden.

- (GCKConnectionState) connectionState
readnonatomicassign

Der aktuelle Verbindungsstatus der Sitzung.