Обзор
Класс, управляющий сеансами.
Метод startSessionWithDevice: (GCKSessionManager) используется для создания нового сеанса с данным GCKDevice . Диспетчер сеансов использует GCKDeviceProvider для этого типа устройства для создания нового объекта GCKSession , которому он затем делегирует все запросы сеанса.
GCKSessionManager обрабатывает автоматическое возобновление приостановленных сеансов (то есть возобновление сеансов, которые были завершены, когда приложение перешло в фоновый режим, или в случае сбоя приложения или его принудительного закрытия пользователем). Когда приложение возобновляет или перезагружается, диспетчер сеансов некоторое время ждет, пока поставщик устройства приостановленного сеанса снова обнаружит это устройство, и если это произойдет, он попытается повторно подключиться к этому устройству и восстановить сеанс. автоматически.
Если приложение создало GCKUICastButton без указания цели и селектора, то при нажатии пользователем кнопки откроется диалоговое окно трансляции по умолчанию, и сеансы будут автоматически запускаться и останавливаться в зависимости от выбора пользователя или отключения устройства. Однако если приложение предоставляет собственный диалоговый пользовательский интерфейс выбора/управления устройством, то ему следует использовать GCKSessionManager напрямую для создания сеансов и управления ими.
Независимо от того, использует ли приложение GCKSessionManager для управления сеансами, оно может подключить GCKSessionManagerListener для получения уведомлений о событиях сеанса, а также может использовать KVO для мониторинга свойства connectionState для отслеживания текущего состояния жизненного цикла сеанса.
- С
- 3.0
Наследует NSObject.
Сводка метода экземпляра | |
(instancetype) | - init |
Инициализатор по умолчанию недоступен. Более... | |
(BOOL) | - startSessionWithDevice: |
Запускает новый сеанс с данным устройством, используя параметры сеанса по умолчанию, зарегистрированные для категории устройств, если таковые имеются. Более... | |
(BOOL) | - startSessionWithDevice:sessionOptions: |
Начинает новый сеанс с данным устройством и параметрами. Более... | |
(BOOL) | - startSessionWithOpenURLOptions:sessionOptions: |
Пытается присоединиться или начать сеанс с параметрами, которые были предоставлены методу UIApplicationDelegate::application:openURL:options:. Более... | |
(BOOL) | - suspendSessionWithReason: |
Приостанавливает текущий сеанс. Более... | |
(BOOL) | - endSession |
Завершает текущий сеанс. Более... | |
(BOOL) | - endSessionAndStopCasting: |
Завершает текущий сеанс и прекращает трансляцию, если подключено одно устройство-отправитель; в противном случае при необходимости прекращается трансляция, если подключено несколько устройств-отправителей. Более... | |
(BOOL) | - hasConnectedSession |
Проверяет, управляется ли сеанс в данный момент этим менеджером сеансов и подключен ли он в данный момент. Более... | |
(BOOL) | - hasConnectedCastSession |
Проверяет, управляется ли в данный момент сеанс Cast этим менеджером сеансов и подключен ли он в данный момент. Более... | |
(void) | - setDefaultSessionOptions:forDeviceCategory: |
Устанавливает параметры сеанса по умолчанию для данной категории устройств. Параметры сеанса передаются в метод createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) , когда пользователь выбирает устройство в диалоговом окне Cast. Более... | |
(nullable GCKSessionOptions *) | - defaultSessionOptionsForDeviceCategory: |
Получает параметры сеанса по умолчанию для данной категории устройств. Более... | |
(void) | - addListener: |
Добавляет прослушиватель для получения уведомлений. Более... | |
(void) | - removeListener: |
Удаляет прослушиватель, который был ранее добавлен с помощью addListener: . Более... | |
Сводная информация о недвижимости | |
GCKSession * | currentSession |
Текущая сессия, если таковая имеется. Более... | |
GCKCastSession * | currentCastSession |
Текущий сеанс трансляции, если таковой имеется. Более... | |
GCKConnectionState | connectionState |
Текущее состояние соединения сеанса. Более... | |
Подробности метода
- (instancetype) init |
Инициализатор по умолчанию недоступен.
- (BOOL) startSessionWithDevice: | ( GCKDevice *) | device |
Запускает новый сеанс с данным устройством, используя параметры сеанса по умолчанию, зарегистрированные для категории устройств, если таковые имеются.
Это асинхронная операция.
- Parameters
-
device The device to use for this session.
- Возврат
-
YES
, если операция была запущена успешно,NO
, если в данный момент установлен сеанс или если операция не может быть запущена.
- (BOOL) startSessionWithDevice: | ( GCKDevice *) | device | |
sessionOptions: | (nullable GCKSessionOptions *) | options | |
Начинает новый сеанс с данным устройством и параметрами.
Это асинхронная операция.
- Parameters
-
device The device to use for this session. options The options for this session, if any. May be nil
.
- Возврат
-
YES
, если операция была запущена успешно,NO
, если в данный момент установлен сеанс или если операция не может быть запущена.
- С
- 4.0
- (BOOL) startSessionWithOpenURLOptions: | ( GCKOpenURLOptions *) | openURLOptions | |
sessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
Пытается присоединиться или начать сеанс с параметрами, которые были предоставлены методу UIApplicationDelegate::application:openURL:options:.
Обычно это запрос на присоединение к существующему сеансу трансляции на определенном устройстве, инициированному другим приложением.
- Parameters
-
openURLOptions The options that were extracted from the URL. sessionOptions The options for this session, if any. May be nil
.
- Возврат
-
YES
если операция была запущена успешно,NO
, если в данный момент установлен сеанс или параметры openURL не содержат необходимых параметров трансляции.
- С
- 4.0
- (BOOL) suspendSessionWithReason: | ( GCKConnectionSuspendReason ) | reason |
Приостанавливает текущий сеанс.
Это асинхронная операция.
- Parameters
-
reason The reason for the suspension.
- Возврат
-
YES
, если операция была запущена успешно,NO
, если в данный момент сеанс не установлен или операцию невозможно запустить.
- (BOOL) endSession |
Завершает текущий сеанс.
Это асинхронная операция.
- Возврат
-
YES
, если операция была запущена успешно,NO
, если в данный момент сеанс не установлен или операцию невозможно запустить.
- (BOOL) endSessionAndStopCasting: | (BOOL) | stopCasting |
Завершает текущий сеанс и прекращает трансляцию, если подключено одно устройство-отправитель; в противном случае при необходимости прекращается трансляция, если подключено несколько устройств-отправителей.
Используйте параметр stopCasting
, чтобы указать, должно ли приведение на приемнике прекращаться после завершения сеанса. Этот параметр применяется только при подключении нескольких устройств-отправителей. Например, одно и то же приложение открыто на нескольких устройствах-отправителях, и каждое устройство-отправитель имеет активный сеанс трансляции с одним и тем же устройством-получателем.
- Если для параметра
stopCasting
установлено значениеYES
, приложение-приемник прекращает трансляцию при подключении нескольких устройств. - Если для
stopCasting
установлено значениеNO
и на других устройствах активен сеанс, приемник продолжает воспроизведение. - Если подключено только одно устройство-отправитель, приложение-получатель прекращает трансляцию мультимедиа и игнорирует значение
stopCasting
, даже если для него установлено значениеNO
.
- Parameters
-
stopCasting Whether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
- Возврат
-
YES
, если операция по завершению сеанса началась успешно,NO
, если в данный момент сеанс не установлен или операцию невозможно запустить.
- (BOOL) hasConnectedSession |
Проверяет, управляется ли сеанс в данный момент этим менеджером сеансов и подключен ли он в данный момент.
Это будет YES
, если состояние сеанса — GCKConnectionStateConnected.
- (BOOL) hasConnectedCastSession |
Проверяет, управляется ли в данный момент сеанс Cast этим менеджером сеансов и подключен ли он в данный момент.
Это будет YES
, если состояние сеанса — GCKConnectionStateConnected, а сеанс — сеанс Cast.
- (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
forDeviceCategory: | (NSString *) | category | |
Устанавливает параметры сеанса по умолчанию для данной категории устройств. Параметры сеанса передаются в метод createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) , когда пользователь выбирает устройство в диалоговом окне Cast.
Для сеансов Cast в параметрах сеанса можно указать, какое приложение-приемник запускать.
- Parameters
-
sessionOptions The session options. May be nil
to remove any previously set options.category The device category.
- С
- 4.0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: | (NSString *) | category |
Получает параметры сеанса по умолчанию для данной категории устройств.
- Parameters
-
category The device category.
- Возврат
- Параметры сеанса по умолчанию или
nil
, если их нет.
- С
- 4.0
- (void) addListener: | (id< GCKSessionManagerListener >) | listener |
Добавляет прослушиватель для получения уведомлений.
Добавленный прослушиватель слабо удерживается, и его следует сохранить, чтобы избежать неожиданного освобождения.
- Parameters
-
listener The listener to add.
- (void) removeListener: | (id< GCKSessionManagerListener >) | listener |
Удаляет прослушиватель, который был ранее добавлен с помощью addListener: .
- Parameters
-
listener The listener to remove.
Детали недвижимости
|
read nonatomic strong |
Текущая сессия, если таковая имеется.
|
read nonatomic strong |
Текущий сеанс трансляции, если таковой имеется.
|
read nonatomic assign |
Текущее состояние соединения сеанса.