Класс GKSession

Справочник по классам GKSession

Обзор

Абстрактный базовый класс, представляющий сеанс с принимающим устройством.

Подклассы должны реализовывать start (GCKSession(Protected)) , endAndStopCasting: (GCKSession(Protected)) , suspendWithReason: (GCKSession(Protected)) и resume (GCKSession(Protected)) и должны вызывать соответствующие методы уведомления (например, , notifyDidStartWithSessionID: (GCKSession(Protected)) ), чтобы указать соответствующие изменения в состоянии сеанса. Подклассы также могут реализовывать setDeviceVolume: (GCKSession) , setDeviceMuted: (GCKSession) и remoteMediaClient , если устройство поддерживает такие операции.

Сеанс создается и управляется с помощью методов сеанса в GCKSessionManager , который использует соответствующий GCKDeviceProvider для создания сеанса, а затем делегирует запросы сеанса этому объекту GCKSession .

С
3.0

Наследует NSObject.

Наследуется GCKCastSession .

Резюме метода экземпляра

(instancetype) - initWithDevice:traits:sessionID:
Инициализирует новый объект сеанса для данного устройства. Более...
( GCKRequest *) - setDeviceVolume:
Устанавливает громкость устройства. Более...
( GCKRequest *) - setDeviceMuted:
Устанавливает состояние отключения звука устройства. Более...
(void) - start
Запускает сеанс. Более...
(void) - endAndStopCasting:
Заканчивает сеанс. Более...
(void) - suspendWithReason:
Приостанавливает сеанс по указанной причине. Более...
(void) - resume
Возобновляет сеанс. Более...
(void) - notifyDidStartWithSessionID:
Вызывается подклассами для уведомления платформы о том, что сеанс запущен. Более...
(void) - notifyDidFailToStartWithError:
Вызывается подклассами для уведомления платформы о том, что сеанс не удалось запустить. Более...
(void) - notifyDidResume
Вызывается подклассами для уведомления платформы о возобновлении сеанса. Более...
(void) - notifyDidSuspendWithReason:
Вызывается подклассами для уведомления платформы о том, что сеанс приостановлен. Более...
(void) - notifyDidEndWithError:
Вызывается подклассами для уведомления платформы о завершении сеанса. Более...
(void) - notifyDidReceiveDeviceVolume:muted:
Вызывается подклассами для уведомления платформы о том, что от устройства получено обновленное состояние громкости и отключения звука устройства. Более...
(void) - notifyDidReceiveDeviceStatus:
Вызывается подклассами для уведомления платформы о том, что от устройства получено обновленное состояние. Более...

Сводка свойств

GCKDevice device
Устройство, с которым связан этот сеанс. Более...
NSString *  sessionID
Текущий идентификатор сеанса, если он есть. Более...
GCKConnectionState   connectionState
Текущее состояние соединения сеанса. Более...
BOOL  suspended
Флаг, указывающий, приостановлен ли сеанс в данный момент. Более...
NSString *  deviceStatusText
Текст текущего состояния устройства. Более...
GCKSessionTraits traits
Сессионные черты. Более...
float  currentDeviceVolume
Текущая громкость устройства в диапазоне [0.0, 1.0]. Более...
BOOL  currentDeviceMuted
Текущее состояние отключения звука устройства. Более...
GCKRemoteMediaClient remoteMediaClient
Объект GCKRemoteMediaClient , который можно использовать для управления воспроизведением мультимедиа в этом сеансе. Более...
GCKMediaMetadata mediaMetadata
Текущие метаданные мультимедиа, если они есть. Более...

Сведения о методе

- (instancetype) initWithDevice: ( GCKDevice *)  device
traits: ( GCKSessionTraits *)  traits
sessionID: (NSString *__nullable)  sessionID  

Инициализирует новый объект сеанса для данного устройства.

Parameters
deviceThe device.
traitsThe session traits.
sessionIDThe session ID of an existing session, if this object will be used to resume a session; otherwise nil if it will be used to start a new session.
- ( GCKRequest *) setDeviceVolume: (float)  volume

Устанавливает громкость устройства.

Это асинхронная операция. Реализация по умолчанию — это отсутствие операции, которая завершается сбоем запроса с ошибкой GCKErrorCodeUnsupportedFeature.

Parameters
volumeThe new volume.
Возвращает
Объект GCKRequest для отслеживания запроса.
С
3,4; в предыдущих версиях фреймворка этот метод возвращал void .
- ( GCKRequest *) setDeviceMuted: (BOOL)  muted

Устанавливает состояние отключения звука устройства.

Это асинхронная операция. Реализация по умолчанию — это отсутствие операции, которая завершается сбоем запроса с ошибкой GCKErrorCodeUnsupportedFeature.

Parameters
mutedThe new mute state.
Возвращает
Объект GCKRequest для отслеживания запроса.
С
3,4; в предыдущих версиях фреймворка этот метод возвращал void .
- (void) start

Запускает сеанс.

Это асинхронная операция. Должен быть переопределен подклассами.

Предоставляется категорией GCKSession(Protected) .

- (void) endAndStopCasting: (BOOL)  stopCasting

Заканчивает сеанс.

Это асинхронная операция. Должен быть переопределен подклассами.

Parameters
stopCastingWhether to stop casting content to the receiver.

Предоставляется категорией GCKSession(Protected) .

- (void) suspendWithReason: ( GCKConnectionSuspendReason reason

Приостанавливает сеанс по указанной причине.

Это асинхронная операция. Должен быть переопределен подклассами.

Предоставляется категорией GCKSession(Protected) .

- (void) resume

Возобновляет сеанс.

Это асинхронная операция. Должен быть переопределен подклассами.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidStartWithSessionID: (NSString *)  sessionID

Вызывается подклассами для уведомления платформы о том, что сеанс запущен.

Parameters
sessionIDThe session's unique ID.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidFailToStartWithError: (NSError *)  error

Вызывается подклассами для уведомления платформы о том, что сеанс не удалось запустить.

Parameters
errorThe error that occurred.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidResume

Вызывается подклассами для уведомления платформы о возобновлении сеанса.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidSuspendWithReason: ( GCKConnectionSuspendReason reason

Вызывается подклассами для уведомления платформы о том, что сеанс приостановлен.

Parameters
reasonThe reason for the suspension.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidEndWithError: (NSError *__nullable)  error

Вызывается подклассами для уведомления платформы о завершении сеанса.

Parameters
errorThe error that caused the session to end, if any. Should be nil if the session was ended intentionally.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidReceiveDeviceVolume: (float)  volume
muted: (BOOL)  muted  

Вызывается подклассами для уведомления платформы о том, что от устройства получено обновленное состояние громкости и отключения звука устройства.

Parameters
volumeThe device's current volume. Must be in the range [0, 1.0];
mutedThe device's current mute state.

Предоставляется категорией GCKSession(Protected) .

- (void) notifyDidReceiveDeviceStatus: (NSString *__nullable)  statusText

Вызывается подклассами для уведомления платформы о том, что от устройства получено обновленное состояние.

Parameters
statusTextThe new status.

Предоставляется категорией GCKSession(Protected) .

Сведения о собственности

- ( GCKDevice *) device
read nonatomic strong

Устройство, с которым связан этот сеанс.

- (NSString*) sessionID
read nonatomic copy

Текущий идентификатор сеанса, если он есть.

- ( GCKConnectionState ) connectionState
read nonatomic assign

Текущее состояние соединения сеанса.

- (BOOL) suspended
read nonatomic assign

Флаг, указывающий, приостановлен ли сеанс в данный момент.

- (NSString*) deviceStatusText
read nonatomic copy

Текст текущего состояния устройства.

- ( GCKSessionTraits *) traits
read nonatomic copy

Сессионные черты.

- (float) currentDeviceVolume
read nonatomic assign

Текущая громкость устройства в диапазоне [0.0, 1.0].

- (BOOL) currentDeviceMuted
read nonatomic assign

Текущее состояние отключения звука устройства.

- ( GCKRemoteMediaClient *) remoteMediaClient
read nonatomic strong

Объект GCKRemoteMediaClient , который можно использовать для управления воспроизведением мультимедиа в этом сеансе.

Он равен nil до начала сеанса или если сеанс не поддерживает API GCKRemoteMediaClient . Подклассы, предоставляющие интерфейс GCKRemoteMediaClient , должны переопределять метод получения.

- ( GCKMediaMetadata *) mediaMetadata
read nonatomic strong

Текущие метаданные мультимедиа, если они есть.

Будет nil , если сеанс не поддерживает пространство имен мультимедиа или если в настоящее время в приемнике нет загруженных мультимедиа.