概要
キャスト デバイスのコントローラ。
このクラスは、Cast デバイスで実行されているアプリケーションにメッセージを送信したり、アプリケーションからメッセージを受信したり、アプリケーションを起動したり、アプリケーションを閉じたりできます。
GCKDeviceManager インスタンスは、キャスト デバイスへの接続が確立されているか、作成または破棄の処理中である限り、スコープ内に留まる必要があります。connect (GCKDeviceManager) で接続が開始される前、または deviceManager:didDisconnectWithError: (GCKDeviceManagerDelegate-p)、deviceManager:didSuspendConnectionWithReason: (GCKDeviceManagerDelegate-p)、deviceManager:didFailToConnectWithError: (GCKDeviceManagerDelegate-p) のいずれかのデリゲート コールバックが呼び出された後に、オブジェクトを解放しても安全です。
- Deprecated:
- GCKSessionManager と GCKCastSession を使用して、Cast レシーバとやり取りします。
NSObject を継承します。
インスタンス メソッドの概要 | |
(instancetype) | - initWithDevice:clientPackageName: |
指定されたデバイスを使用して新しい GCKDeviceManager を構築します。詳細... | |
(instancetype) | - initWithDevice:clientPackageName:ignoreAppStateNotifications: |
指定イニシャライザ。詳細... | |
(void) | - connect |
デバイスに接続します。詳細... | |
(void) | - disconnect |
デバイスとの接続を解除します。詳細... | |
(void) | - disconnectWithLeave: |
デバイスとの接続を解除します。詳細... | |
(BOOL) | - addChannel: |
特定の名前空間でこのデバイスのメッセージを送受信できるチャネルを追加します。詳細... | |
(BOOL) | - removeChannel: |
以前に追加されたチャンネルを削除します。詳細... | |
(NSInteger) | - launchApplication: |
アプリケーションを起動します。詳細... | |
(NSInteger) | - launchApplication:withLaunchOptions: |
指定された起動オプションを使用してアプリケーションを起動します。詳細... | |
(NSInteger) | - launchApplication:relaunchIfRunning: |
アプリケーションを起動します。すでに実行中の場合は、必要に応じて再起動します。詳細... | |
(NSInteger) | - joinApplication: |
アプリケーションに参加します。詳細... | |
(NSInteger) | - joinApplication:sessionID: |
特定のアプリケーション セッション ID を持つアプリケーションに参加します。詳細... | |
(BOOL) | - leaveApplication |
現在のアプリケーションを終了します。詳細... | |
(NSInteger) | - stopApplication |
実行中のアプリケーションを停止します。詳細... | |
(NSInteger) | - stopApplicationWithSessionID: |
指定されたアプリケーション セッション ID を持つアプリケーションを停止します。詳細... | |
(NSInteger) | - setVolume: |
システム音量を設定します。詳細... | |
(NSInteger) | - setMuted: |
ミュートのオン / オフを切り替えます。詳細... | |
(NSInteger) | - requestDeviceStatus |
デバイスの現在のステータスをリクエストします。詳細... | |
プロパティの概要 | |
BOOL | ignoreAppStateNotifications |
このオブジェクトがアプリの状態通知をリッスンするかどうか。詳細... | |
GCKConnectionState | connectionState |
デバイス マネージャーの現在の接続状態。詳細... | |
GCKConnectionState | applicationConnectionState |
デバイス マネージャーの現在のアプリケーション接続状態。詳細... | |
BOOL | isConnected |
デバイス マネージャーがデバイスへの接続を確立している場合は true。詳細... | |
BOOL | isConnectedToApp |
デバイス マネージャーがデバイス上のアプリへの接続を確立している場合は true。詳細... | |
BOOL | isReconnecting |
デバイス マネージャーが一時的なイベント(アプリがバックグラウンドに移行した、ネットワーク エラーが発生したが再接続で解決する可能性があるなど)により切断された場合は true。詳細... | |
NSTimeInterval | reconnectTimeout |
ソケットが一時的なエラーで切断された場合、この時間だけ再接続が試行されます。詳細... | |
GCKDevice * | device |
この GCKDeviceManager によって制御されているデバイス。詳細... | |
id< GCKDeviceManagerDelegate > | delegate |
GCKDeviceManager から通知を受け取るためのデリゲート。詳細... | |
float | deviceVolume |
デバイスの現在の音量([0.0, 1.0] の範囲)。不明な場合は 0。詳細... | |
BOOL | deviceMuted |
デバイスの現在のミュート状態(不明な場合は NO )。詳細... | |
GCKActiveInputStatus | activeInputStatus |
デバイスの現在の「アクティブな入力」ステータス。詳細... | |
GCKStandbyStatus | standbyStatus |
デバイスの現在の「スタンバイ」ステータス。詳細... | |
NSString * | applicationSessionID |
現在接続されているレシーバー アプリケーションのアプリケーション セッション ID(該当する場合)。該当しない場合は nil 。詳細... | |
GCKApplicationMetadata * | applicationMetadata |
レシーバーで現在実行中のレシーバー アプリケーションのメタデータ(ある場合)。ない場合は nil 。詳細... | |
NSString * | applicationStatusText |
現在実行中のレシーバー アプリケーションから最後に報告されたステータス テキスト(ある場合)。ない場合は nil 。詳細... | |
メソッドの詳細
- (instancetype) initWithDevice: | (GCKDevice *) | device | |
clientPackageName: | (NSString *) | clientPackageName | |
指定されたデバイスを使用して新しい GCKDeviceManager を構築します。
このオブジェクトはアプリの状態通知をリッスンし、アプリがバックグラウンドに移行するとデバイスから自動的に切断され、アプリがフォアグラウンドに戻るとデバイスへの再接続を試みます。
- Parameters
-
device The device to control. clientPackageName The client package name.
- (instancetype) initWithDevice: | (GCKDevice *) | device | |
clientPackageName: | (NSString *) | clientPackageName | |
ignoreAppStateNotifications: | (BOOL) | ignoreAppStateNotifications | |
指定イニシャライザ。
指定されたデバイスを制御するための新しい GCKDeviceManager を構築します。
ignoreAppStateNotifications が NO
の場合、オブジェクトはアプリの状態の変化をリッスンし、アプリがバックグラウンドに移行するとデバイスから自動的に切断され、アプリがフォアグラウンドに戻るとデバイスへの再接続を試みます。
ignoreAppStateNotifications が YES
の場合、オブジェクトはこれらの通知をリッスンしません。接続のライフサイクルを管理するのはアプリの責任となります。一般的に、バックグラウンドで実行されている iOS アプリは無期限に実行を継続できず、アクティブなネットワーク接続は最終的にオペレーティング システムによって閉じられます。
- Parameters
-
device The device to control. clientPackageName The client package name. ignoreAppStateNotifications Whether this object will ignore app state notifications.
- (void) connect |
デバイスに接続します。
- (void) disconnect |
デバイスとの接続を解除します。
これは明示的な切断です。
connect が呼び出された後、このオブジェクトがオーナーによってリリースされるまでの間に、切断メソッドのいずれかを呼び出す必要があります。
- (void) disconnectWithLeave: | (BOOL) | leaveApplication |
デバイスとの接続を解除します。
connect が呼び出された後、このオブジェクトがオーナーによってリリースされるまでの間に、切断メソッドのいずれかを呼び出す必要があります。
- Parameters
-
leaveApplication YES
if this is an explicit disconnect that should disconnect from ("leave") the receiver application before closing the connection;NO
if this is an implicit disconnect that should just close the connection.
- (BOOL) addChannel: | (GCKCastChannel *) | channel |
特定の名前空間でこのデバイスのメッセージを送受信できるチャネルを追加します。
- Parameters
-
channel The channel.
- 戻り値 チャンネルが追加された場合は
YES
、その名前空間にすでにチャンネルが関連付けられているため追加されなかった場合はNO
。
- (BOOL) removeChannel: | (GCKCastChannel *) | channel |
以前に追加されたチャンネルを削除します。
- Parameters
-
channel The channel.
- 戻り値 チャンネルが削除された場合は
YES
、指定されたチャンネルが以前に添付されていなかったために削除されなかった場合はNO
。
- (NSInteger) launchApplication: | (NSString *) | applicationID |
アプリケーションを起動します。
- Parameters
-
applicationID The application ID.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) launchApplication: | (NSString *) | applicationID | |
withLaunchOptions: | (GCKLaunchOptions *__nullable) | launchOptions | |
指定された起動オプションを使用してアプリケーションを起動します。
- Parameters
-
applicationID The application ID. launchOptions The launch options for this request. If nil
, defaults will be used.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) launchApplication: | (NSString *) | applicationID | |
relaunchIfRunning: | (BOOL) | relaunchIfRunning | |
アプリケーションを起動します。必要に応じて、すでに実行中の場合は再起動します。
- Deprecated:
- 代わりに launchApplication:withLaunchOptions: を使用してください。
- Parameters
-
applicationID The application ID. relaunchIfRunning If YES
, relaunches the application if it is already running instead of joining the running application.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) joinApplication: | (NSString *__nullable) | applicationID |
アプリケーションに参加します。
- Parameters
-
applicationID The application ID. If nil
, attempts to join whichever application is currently running; otherwise, attempts to join the specified application.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) joinApplication: | (NSString *) | applicationID | |
sessionID: | (NSString *) | sessionID | |
特定のアプリケーション セッション ID を持つアプリケーションを結合します。
指定されたセッション ID がレシーバーでアクティブでなくなった場合、リクエストは失敗します。
- Parameters
-
applicationID The application ID. sessionID The application session ID.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (BOOL) leaveApplication |
現在のアプリケーションを終了します。
- 戻り値 メッセージを送信できなかった場合は
NO
。
- (NSInteger) stopApplication |
実行中のアプリケーションを停止します。
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) stopApplicationWithSessionID: | (NSString *__nullable) | sessionID |
指定されたアプリケーション セッション ID を持つアプリケーションを停止します。
指定されたセッション ID がレシーバーでアクティブでなくなった場合、リクエストは失敗します。
- Parameters
-
sessionID The application session ID, which may not be nil
.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) setVolume: | (float) | volume |
システム音量を設定します。
- Parameters
-
volume The new volume, in the range [0.0, 1.0]. Out of range values will be silently clipped.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) setMuted: | (BOOL) | muted |
ミュートのオン / オフを切り替えます。
- Parameters
-
muted Whether audio should be muted or unmuted.
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
- (NSInteger) requestDeviceStatus |
デバイスの現在のステータスをリクエストします。
これにより、更新されたステータス情報が受信されると、すべてのデリゲート ステータス更新コールバックが 1 回呼び出されます。
- 戻り値
- リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID。
プロパティの詳細
|
readnonatomicassign |
このオブジェクトがアプリの状態通知をリッスンするかどうか。
このフラグはイニシャライザーで指定できます。デフォルト値は NO
です。
|
readnonatomicassign |
デバイス マネージャーの現在の接続状態。
|
readnonatomicassign |
デバイス マネージャーの現在のアプリケーション接続状態。
|
readnonatomicassign |
デバイス マネージャーがデバイスへの接続を確立している場合は true。
- Deprecated:
- connectionState を使用します。
|
readnonatomicassign |
デバイス マネージャーがデバイス上のアプリへの接続を確立している場合は true。
|
readnonatomicassign |
デバイス マネージャーが一時的なイベント(アプリがバックグラウンドに移行した、ネットワーク エラーが発生したが再接続で解決する可能性があるなど)により切断された場合は true。
デバイス マネージャーが一時的なイベントの後に再接続を試みている間は、切断/接続のコールバックは呼び出されませんが、プロパティは常に実際の現在の状態を反映し、監視できます。
|
readwritenonatomicassign |
ソケットが一時的なエラーで切断された場合、この時間だけ再接続が試行されます。
デフォルトのタイムアウトは 15 秒です。
|
readnonatomicassign |
この GCKDeviceManager によって制御されているデバイス。
|
readwritenonatomicweak |
GCKDeviceManager から通知を受け取るためのデリゲート。
|
readnonatomicassign |
デバイスの現在の音量([0.0, 1.0] の範囲)。不明な場合は 0。
|
readnonatomicassign |
デバイスの現在のミュート状態(不明な場合は NO
)。
|
readnonatomicassign |
デバイスの現在の「アクティブな入力」ステータス。
|
readnonatomicassign |
デバイスの現在の「スタンバイ」ステータス。
|
readnonatomiccopy |
現在接続されているレシーバー アプリケーションのアプリケーション セッション ID(ある場合)。ない場合は nil
。
受信側アプリが起動されるたびに(同じアプリが再起動される場合も含む)、新しい一意のセッション ID が生成され、受信側アプリが実行されている限り有効です。
|
readnonatomiccopy |
レシーバーで現在実行中のレシーバー アプリケーションのメタデータ(ある場合)。ない場合は nil
。
|
readnonatomiccopy |
現在実行中のレシーバー アプリケーションから最後に報告されたステータス テキスト(ある場合)。ない場合は nil
。