概要
セッションを管理するクラス。
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: で追加されたリスナーを削除します。その他... | |
プロパティの概要 | |
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 |
現在のセッションを終了し、1 台の送信デバイスが接続されている場合はキャストを停止します。それ以外の場合、複数の送信デバイスが接続されている場合はキャストを停止します。
セッション終了時にレシーバーでのキャストを停止するかどうかを指定するには、stopCasting
パラメータを使用します。このパラメータは、複数の送信者デバイスが接続されている場合にのみ適用されます。たとえば、複数の送信側デバイスで同じアプリが開いており、各送信側デバイスに同じ受信機のキャスト セッションがアクティブなとします。
stopCasting
をYES
に設定すると、複数のデバイスが接続されたときにレシーバー アプリがキャストを停止します。stopCasting
がNO
で、他のデバイスのアクティブなセッションがある場合、レシーバーが再生を続けます。- 接続中のデバイスが 1 台のみである場合、レシーバー アプリは
NO
が設定されている場合でも、メディアのキャストを停止してstopCasting
値を無視します。
- 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 |
現在、セッション マネージャーによってセッションが管理され、接続されているかどうかをテストします。
セッション状態が GCKConnectionStateConnected の場合は YES
になります。
- (BOOL) hasConnectedCastSession |
キャスト セッションが現在このセッション マネージャーによって管理され、現在接続されているかどうかをテストします。
セッション状態が GCKConnectionStateConnected で、セッションがキャスト セッションの場合は YES
になります。
- (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
forDeviceCategory: | (NSString *) | category | |
特定のデバイス カテゴリのデフォルトのセッション オプションを設定します。ユーザーがキャスト ダイアログでデバイスを選択すると、セッション オプションが createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) メソッドに渡されます。
キャスト セッションの場合、セッション オプションで、起動するレシーバー アプリケーションを指定できます。
- 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.
プロパティの詳細
|
readnonatomicstrong |
現在のセッション(ある場合)。
|
readnonatomicstrong |
現在のキャスト セッション(ある場合)。
|
readnonatomicassign |
現在のセッション接続状態。