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 session utilise le 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 la reprise des sessions qui ont été arrêtées lorsque l'application est passée en arrière-plan, ou en cas de plantage ou d'arrêt forcé par l'utilisateur de l'application). Lorsque l'application reprend ou redémarre, le gestionnaire de session attend un court instant que le fournisseur de l'appareil concerné par la session suspendue le retrouve. Si c'est le cas, il tente de se reconnecter à cet appareil et de rétablir automatiquement la session.

Si l'application a créé un GCKUICastButton sans fournir de cible ni de sélecteur, un utilisateur appuie sur le bouton pour afficher la boîte de dialogue "Cast" par défaut. Celle-ci démarre et arrête automatiquement des sessions en fonction du choix de l'utilisateur ou de la déconnexion d'un appareil. Toutefois, si l'application fournit sa propre interface utilisateur de la boîte de dialogue de sélection/commande d'appareil, elle doit utiliser directement GCKSessionManager pour créer et contrôler des sessions.

Que l'application utilise ou non le GCKSessionManager pour contrôler les sessions, elle peut joindre un GCKSessionManagerListener pour être informé des événements de session, et 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 du NSObject.

Résumé des méthodes 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 les options fournies à la méthode UIApplicationDeélégation::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 la diffusion si un appareil émetteur est connecté. Sinon, la diffusion peut être interrompue si plusieurs appareils émetteurs sont connectés. Plus...
 
(BOOL) - hasConnectedSession
 Vérifie si une session est actuellement gérée par ce gestionnaire de sessions et s'il est actuellement connecté. Plus...
 
(BOOL) - hasConnectedCastSession
 Vérifie si une session Cast est actuellement gérée par ce gestionnaire de session et s'il est actuellement connecté. Plus...
 
(void) - setDefaultSessionOptions:forDeviceCategory:
 Définit les options de session par défaut pour la catégorie d'appareil donnée.Les options de session sont transmises à la méthode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) lorsque l'utilisateur sélectionne un appareil dans la boîte de dialogue "Caster". 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 recevoir des notifications. Plus...
 
(void) - removeListener:
 Supprime un écouteur précédemment ajouté avec addListener:. Plus...
 

Résumé de la propriété

GCKSessioncurrentSession
 Session en cours, le cas échéant. Plus...
 
GCKCastSessioncurrentCastSession
 La session Cast actuelle, le cas échéant. Plus...
 
GCKConnectionState connectionState
 État actuel de la connexion de 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.

Il s'agit d'une opération asynchrone.

Parameters
deviceThe device to use for this session.
Renvoie
YES si l'opération a réussi, NO si une session est actuellement établie 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.

Il s'agit d'une opération 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 réussi, NO si une session est actuellement établie 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 les options fournies à la méthode UIApplicationDeélégation::application:openURL:options:.

En général, il s'agit d'une demande de participation à une session Cast existante lancée par une autre application sur un appareil spécifique.

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 réussi, NO si une session est actuellement établie ou si les options openURL ne contiennent pas les options Cast requises.
Depuis
4,0
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

Suspend la session en cours.

Il s'agit d'une opération asynchrone.

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

Met fin à la session en cours.

Il s'agit d'une opération asynchrone.

Renvoie
YES si l'opération a réussi, NO si aucune session n'est actuellement établie 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 la diffusion si un appareil émetteur est connecté. Sinon, la diffusion peut être interrompue 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 émetteurs sont connectés. Par exemple, la même application est ouverte sur plusieurs appareils émetteurs, et chaque appareil émetteur dispose d'une session Cast active avec le même appareil récepteur.

  • Si vous définissez stopCasting sur YES, l'application du 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 la lecture.
  • Si un seul appareil émetteur est connecté, l'application réceptrice 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 visant à mettre fin à la session a démarré, NO si aucune session n'est actuellement établie 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 sessions et s'il est actuellement connecté.

Cette 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 s'il est actuellement connecté.

Ce sera YES si l'état de la session est GCKConnectionStateConnected et qu'il s'agit d'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'appareil donnée.Les options de session sont transmises à la méthode createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) lorsque l'utilisateur sélectionne un appareil dans la boîte de dialogue "Caster".

Pour les sessions Cast, les options de session peuvent spécifier l'application réceptrice à 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
Options de session par défaut, ou nil si aucune.
Depuis
4,0
- (void) addListener: (id< GCKSessionManagerListener >)  listener

Ajoute un écouteur pour recevoir des notifications.

L'écouteur ajouté est faiblement détenu 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

La session Cast actuelle, le cas échéant.

- (GCKConnectionState) connectionState
readnonatomicassign

État actuel de la connexion de la session.