Classe GCKSessionManager

Documentation de référence de la classe GCKSessionManager

Présentation

Une classe qui gère les sessions.

La méthode startSessionWithDevice: (GCKSessionManager) permet de créer une session avec un GCKDevice donné. Le gestionnaire de sessions utilise GCKDeviceProvider pour ce type d'appareil afin de construire un nouvel objet GCKSession, auquel il délègue ensuite toutes les requêtes de session.

GCKSessionManager gère la reprise automatique des sessions suspendues, c'est-à-dire celles qui se sont terminées lorsque l'application est passée en arrière-plan, ou si elle a planté ou a été arrêtée par l'utilisateur. Lorsque l'application reprend ou redémarre, le gestionnaire de sessions attend quelques instants que le fournisseur de l'appareil de la session suspendue le détecte à nouveau. Si c'est le cas, il tente de se reconnecter à cet appareil et de rétablir la session automatiquement.

Si l'application a créé un GCKUICastButton sans indiquer de cible ni de sélecteur, l'utilisateur appuie sur le bouton et affiche la boîte de dialogue Cast par défaut. Les sessions démarrent et s'arrêtent automatiquement en fonction du choix de l'appareil ou de la déconnexion de l'appareil. Toutefois, si l'application fournit sa propre UI de boîte de dialogue de sélection/contrôle de périphérique, elle doit utiliser GCKSessionManager directement pour créer et contrôler des sessions.

Que l'application utilise GCKSessionManager ou non pour contrôler les sessions, elle peut associer un GCKSessionManagerListener pour être informé des événements de session. Elle peut également utiliser KVO pour surveiller la propriété connectionState afin de suivre l'état actuel du cycle de vie de la session.

Depuis
3,0

Hérite de NSObject.

Résumé de la méthode d'instance

(instancetype) - init
 L'initialiseur par défaut n'est pas disponible. Plus...
 
(BOOL) - startSessionWithDevice:
 Démarre une nouvelle session avec l'appareil donné, en utilisant les options de session par défaut enregistrées pour la catégorie d'appareil, le cas échéant. Plus...
 
(BOOL) - startSessionWithDevice:sessionOptions:
 Démarre une nouvelle session avec l'appareil et les options indiqués. Plus...
 
(BOOL) - startSessionWithOpenURLOptions:sessionOptions:
 Tente de rejoindre ou de démarrer une session avec des options fournies à la méthode UIApplicationDelegate::application:openURL:options:. Plus...
 
(BOOL) - suspendSessionWithReason:
 Suspend la session en cours. Plus...
 
(BOOL) - endSession
 Met fin à la session en cours. Plus...
 
(BOOL) - endSessionAndStopCasting:
 Met fin à la session en cours et arrête de caster si un appareil émetteur est connecté. Sinon, elle peut éventuellement être arrêtée si plusieurs appareils émetteurs sont connectés. Plus...
 
(BOOL) - hasConnectedSession
 Vérifie si une session est actuellement gérée par ce gestionnaire de session et si elle est actuellement connectée. Plus...
 
(BOOL) - hasConnectedCastSession
 Vérifie si une session Cast est actuellement gérée par ce gestionnaire de session et si elle est actuellement connectée. Plus...
 
(void) - setDefaultSessionOptions:forDeviceCategory:
 Définit les options de session par défaut pour la catégorie d'appareils en question.Elles sont transmises à la méthode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) lorsque l'utilisateur sélectionne un appareil dans la boîte de dialogue Cast. Plus...
 
(nullable GCKSessionOptions *) - defaultSessionOptionsForDeviceCategory:
 Récupère les options de session par défaut pour une catégorie d'appareils donnée. Plus...
 
(void) - addListener:
 Ajoute un écouteur pour la réception de notifications. Plus...
 
(void) - removeListener:
 Supprime un écouteur précédemment ajouté avec addListener:. Plus...
 

Synthèse

GCKSessioncurrentSession
 Session en cours, le cas échéant. Plus...
 
GCKCastSessioncurrentCastSession
 Session de diffusion actuelle, le cas échéant. Plus...
 
GCKConnectionState connectionState
 État actuel de la connexion à la session. Plus...
 

Détails sur la méthode

- (instancetype) init

L'initialiseur par défaut n'est pas disponible.

- (BOOL) startSessionWithDevice: (GCKDevice *)  device

Démarre une nouvelle session avec l'appareil donné, en utilisant les options de session par défaut enregistrées pour la catégorie d'appareil, le cas échéant.

Cette opération est asynchrone.

Parameters
deviceThe device to use for this session.
Renvoie
YES si l'opération a réussi, NO si une session est en cours ou si l'opération n'a pas pu être lancée.
- (BOOL) startSessionWithDevice: (GCKDevice *)  device
sessionOptions: (nullable GCKSessionOptions *)  options 

Démarre une nouvelle session avec l'appareil et les options indiqués.

Cette opération est asynchrone.

Parameters
deviceThe device to use for this session.
optionsThe options for this session, if any. May be nil.
Renvoie
YES si l'opération a démarré correctement, NO si une session est en cours ou si l'opération n'a pas pu être lancée.
Depuis
4,0
- (BOOL) startSessionWithOpenURLOptions: (GCKOpenURLOptions *)  openURLOptions
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

Tente de rejoindre ou de démarrer une session avec des options fournies à la méthode UIApplicationDelegate::application:openURL:options:.

Il s'agit généralement d'une demande de participation à une session Cast existante sur un appareil lancé par une autre application.

Parameters
openURLOptionsThe options that were extracted from the URL.
sessionOptionsThe options for this session, if any. May be nil.
Renvoie
YES si l'opération a démarré correctement, NO si une session est en cours ou si les options OpenURL ne contiennent pas les options Cast requises.
Depuis
4,0
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

Suspend la session en cours.

Cette opération est asynchrone.

Parameters
reasonThe reason for the suspension.
Renvoie
YES si l'opération a réussi, NO si aucune session n'est en cours ou si l'opération n'a pas pu être lancée.
- (BOOL) endSession

Met fin à la session en cours.

Cette opération est asynchrone.

Renvoie
YES si l'opération a réussi, NO si aucune session n'est en cours ou si l'opération n'a pas pu être lancée.
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

Met fin à la session en cours et arrête de caster si un appareil émetteur est connecté. Sinon, elle peut éventuellement être arrêtée si plusieurs appareils émetteurs sont connectés.

Utilisez le paramètre stopCasting pour indiquer si la diffusion sur le récepteur doit s'arrêter à la fin de la session. Ce paramètre ne s'applique que lorsque plusieurs appareils expéditeurs sont connectés. Par exemple, la même application est ouverte sur plusieurs appareils expéditeurs, et chacun d'eux dispose d'une session Cast active avec le même récepteur.

  • Si vous définissez stopCasting sur YES, l'application récepteur arrête la diffusion lorsque plusieurs appareils sont connectés.
  • Si stopCasting est défini sur NO et que d'autres appareils ont une session active, le récepteur continue de jouer.
  • Si un seul appareil émetteur est connecté, l'application récepteur arrête de caster le contenu multimédia et ignore la valeur stopCasting, même si elle est définie sur NO.
Parameters
stopCastingWhether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
Renvoie
YES si l'opération pour terminer la session a démarré, NO si aucune session n'est en cours ou si l'opération n'a pas pu être lancée.
- (BOOL) hasConnectedSession

Vérifie si une session est actuellement gérée par ce gestionnaire de session et si elle est actuellement connectée.

La valeur est YES si l'état de la session est GCKConnectionStateConnected.

- (BOOL) hasConnectedCastSession

Vérifie si une session Cast est actuellement gérée par ce gestionnaire de session et si elle est actuellement connectée.

La valeur est YES si l'état de la session est GCKConnectionStateConnected et que la session est une session Cast.

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

Définit les options de session par défaut pour la catégorie d'appareils en question.Elles sont transmises à la méthode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) lorsque l'utilisateur sélectionne un appareil dans la boîte de dialogue Cast.

Pour les sessions Cast, les options de session peuvent spécifier l'application récepteur à lancer.

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

Récupère les options de session par défaut pour une catégorie d'appareils donnée.

Parameters
categoryThe device category.
Renvoie
Les options de session par défaut, ou nil dans le cas contraire
Depuis
4,0
- (void) addListener: (id< GCKSessionManagerListener >)  listener

Ajoute un écouteur pour la réception de notifications.

L'écouteur ajouté est faible et doit être conservé pour éviter une désallocation inattendue.

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

Supprime un écouteur précédemment ajouté avec addListener:.

Parameters
listenerThe listener to remove.

Détails de la propriété

- (GCKSession*) currentSession
readnonatomicstrong

Session en cours, le cas échéant.

- (GCKCastSession*) currentCastSession
readnonatomicstrong

Session de diffusion actuelle, le cas échéant.

- (GCKConnectionState) connectionState
readnonatomicassign

État actuel de la connexion à la session.