GCKSessionManager クラス

GCKSessionManager クラス リファレンス

概要

セッションを管理するクラス。

startSessionWithDevice: (GCKSessionManager) メソッドは、指定された GCKDevice で新しいセッションを作成するために使用されます。セッション マネージャーは、そのデバイスタイプに GCKDeviceProvider を使用して新しい GCKSession オブジェクトを作成し、すべてのセッション リクエストを委任します。

GCKSessionManager は、停止中のセッション(アプリがバックグラウンドに移動したときに終了したセッション、またはアプリがクラッシュしたか、ユーザーが強制終了したときに終了したセッション)の自動再開を処理します。アプリケーションが再開または再起動すると、セッション マネージャーは、停止中のセッションのデバイスのデバイス プロバイダが再びそのデバイスを検出するまでしばらく待機します。再起動すると、デバイスへの再接続を試みて、セッションを自動的に再確立します。

アプリがターゲットとセレクタを指定せずに GCKUICastButton を作成した場合、ユーザーがボタンをタップするとデフォルトのキャスト ダイアログが表示され、デバイスの選択または接続解除に基づいてセッションが自動的に開始および停止されます。ただし、アプリが独自のデバイス選択 / 制御ダイアログ UI を提供している場合は、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:
 現在のセッションを終了し、1 台の送信デバイスが接続されている場合はキャストを停止します。それ以外の場合、複数の送信デバイスが接続されている場合はキャストを停止します。その他...
 
(BOOL) - hasConnectedSession
 現在、セッション マネージャーによってセッションが管理され、接続されているかどうかをテストします。その他...
 
(BOOL) - hasConnectedCastSession
 キャスト セッションが現在このセッション マネージャーによって管理され、現在接続されているかどうかをテストします。その他...
 
(void) - setDefaultSessionOptions:forDeviceCategory:
 特定のデバイス カテゴリのデフォルトのセッション オプションを設定します。ユーザーがキャスト ダイアログでデバイスを選択すると、セッション オプションが createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) メソッドに渡されます。その他...
 
(nullable GCKSessionOptions *) - defaultSessionOptionsForDeviceCategory:
 特定のデバイス カテゴリのデフォルトのセッション オプションを取得します。その他...
 
(void) - addListener:
 通知を受け取るためのリスナーが追加されます。その他...
 
(void) - removeListener:
 以前に addListener: で追加されたリスナーを削除します。その他...
 

プロパティの概要

GCKSessioncurrentSession
 現在のセッション(ある場合)。その他...
 
GCKCastSessioncurrentCastSession
 現在のキャスト セッション(ある場合)。その他...
 
GCKConnectionState connectionState
 現在のセッション接続状態。その他...
 

メソッドの詳細

- (instancetype) init

デフォルトのイニシャライザは使用できません。

- (BOOL) startSessionWithDevice: (GCKDevice *)  device

デバイス カテゴリに登録されているデフォルトのセッション オプションがある場合は、それを使用して新しいセッションを開始します。

これは非同期オペレーションです。

Parameters
deviceThe device to use for this session.
戻り値
YES: オペレーションが正常に開始された場合。NO が現在確立されているセッションがある場合、またはオペレーションを開始できなかった場合。
- (BOOL) startSessionWithDevice: (GCKDevice *)  device
sessionOptions: (nullable GCKSessionOptions *)  options 

指定されたデバイスとオプションで新しいセッションを開始します。

これは非同期オペレーションです。

Parameters
deviceThe device to use for this session.
optionsThe 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
openURLOptionsThe options that were extracted from the URL.
sessionOptionsThe options for this session, if any. May be nil.
戻り値
YES: オペレーションが正常に開始された場合。NO が現在確立されている場合、または openURL オプションに必要なキャスト オプションが含まれていません。
シンセ
4.0
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

現在のセッションを一時停止します。

これは非同期オペレーションです。

Parameters
reasonThe reason for the suspension.
戻り値
YES: オペレーションが正常に開始された場合。NO が現在確立されていないセッションの場合、またはオペレーションを開始できなかった場合。
- (BOOL) endSession

現在のセッションを終了します。

これは非同期オペレーションです。

戻り値
YES: オペレーションが正常に開始された場合。NO が現在確立されていないセッションの場合、またはオペレーションを開始できなかった場合。
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

現在のセッションを終了し、1 台の送信デバイスが接続されている場合はキャストを停止します。それ以外の場合、複数の送信デバイスが接続されている場合はキャストを停止します。

セッション終了時にレシーバーでのキャストを停止するかどうかを指定するには、stopCasting パラメータを使用します。このパラメータは、複数の送信者デバイスが接続されている場合にのみ適用されます。たとえば、複数の送信側デバイスで同じアプリが開いており、各送信側デバイスに同じ受信機のキャスト セッションがアクティブなとします。

  • stopCastingYES に設定すると、複数のデバイスが接続されたときにレシーバー アプリがキャストを停止します。
  • stopCastingNO で、他のデバイスのアクティブなセッションがある場合、レシーバーが再生を続けます。
  • 接続中のデバイスが 1 台のみである場合、レシーバー アプリは NO が設定されている場合でも、メディアのキャストを停止して stopCasting 値を無視します。
Parameters
stopCastingWhether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
戻り値
YES: セッションを終了するためのオペレーションが正常に開始された場合。NO が現在確立されているセッションがない場合、またはオペレーションを開始できなかった場合。
- (BOOL) hasConnectedSession

現在、セッション マネージャーによってセッションが管理され、接続されているかどうかをテストします。

セッション状態が GCKConnectionStateConnected の場合は YES になります。

- (BOOL) hasConnectedCastSession

キャスト セッションが現在このセッション マネージャーによって管理され、現在接続されているかどうかをテストします。

セッション状態が GCKConnectionStateConnected で、セッションがキャスト セッションの場合は YES になります。

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

特定のデバイス カテゴリのデフォルトのセッション オプションを設定します。ユーザーがキャスト ダイアログでデバイスを選択すると、セッション オプションが createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) メソッドに渡されます。

キャスト セッションの場合、セッション オプションで、起動するレシーバー アプリケーションを指定できます。

Parameters
sessionOptionsThe session options. May be nil to remove any previously set options.
categoryThe device category.
シンセ
4.0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: (NSString *)  category

特定のデバイス カテゴリのデフォルトのセッション オプションを取得します。

Parameters
categoryThe device category.
戻り値
デフォルトのセッション オプション、または存在しない場合は nil
シンセ
4.0
- (void) addListener: (id< GCKSessionManagerListener >)  listener

通知を受け取るためのリスナーが追加されます。

追加されたリスナーは弱く保持され、予期しない割り当て解除を避けるために保持される必要があります。

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

以前に addListener: で追加されたリスナーを削除します。

Parameters
listenerThe listener to remove.

プロパティの詳細

- (GCKSession*) currentSession
readnonatomicstrong

現在のセッション(ある場合)。

- (GCKCastSession*) currentCastSession
readnonatomicstrong

現在のキャスト セッション(ある場合)。

- (GCKConnectionState) connectionState
readnonatomicassign

現在のセッション接続状態。