GCKDeviceManager クラス

GCKDeviceManager クラス リファレンス

概要

キャスト デバイスのコントローラ。

このクラスは、Cast デバイスで実行されているアプリケーションにメッセージを送信したり、アプリケーションからメッセージを受信したり、アプリケーションを起動したり、アプリケーションを閉じたりできます。

GCKDeviceManager インスタンスは、キャスト デバイスへの接続が確立されているか、作成または破棄の処理中である限り、スコープ内に留まる必要があります。connect (GCKDeviceManager) で接続が開始される前、または deviceManager:didDisconnectWithError: (GCKDeviceManagerDelegate-p)deviceManager:didSuspendConnectionWithReason: (GCKDeviceManagerDelegate-p)deviceManager:didFailToConnectWithError: (GCKDeviceManagerDelegate-p) のいずれかのデリゲート コールバックが呼び出された後に、オブジェクトを解放しても安全です。

Deprecated:
GCKSessionManagerGCKCastSession を使用して、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
 ソケットが一時的なエラーで切断された場合、この時間だけ再接続が試行されます。詳細...
 
GCKDevicedevice
 この GCKDeviceManager によって制御されているデバイス。詳細...
 
id< GCKDeviceManagerDelegatedelegate
 GCKDeviceManager から通知を受け取るためのデリゲート。詳細...
 
float deviceVolume
 デバイスの現在の音量([0.0, 1.0] の範囲)。不明な場合は 0。詳細...
 
BOOL deviceMuted
 デバイスの現在のミュート状態(不明な場合は NO)。詳細...
 
GCKActiveInputStatus activeInputStatus
 デバイスの現在の「アクティブな入力」ステータス。詳細...
 
GCKStandbyStatus standbyStatus
 デバイスの現在の「スタンバイ」ステータス。詳細...
 
NSString * applicationSessionID
 現在接続されているレシーバー アプリケーションのアプリケーション セッション ID(該当する場合)。該当しない場合は nil詳細...
 
GCKApplicationMetadataapplicationMetadata
 レシーバーで現在実行中のレシーバー アプリケーションのメタデータ(ある場合)。ない場合は nil詳細...
 
NSString * applicationStatusText
 現在実行中のレシーバー アプリケーションから最後に報告されたステータス テキスト(ある場合)。ない場合は nil詳細...
 

メソッドの詳細

- (instancetype) initWithDevice: (GCKDevice *)  device
clientPackageName: (NSString *)  clientPackageName 

指定されたデバイスを使用して新しい GCKDeviceManager を構築します。

このオブジェクトはアプリの状態通知をリッスンし、アプリがバックグラウンドに移行するとデバイスから自動的に切断され、アプリがフォアグラウンドに戻るとデバイスへの再接続を試みます。

Parameters
deviceThe device to control.
clientPackageNameThe client package name.
- (instancetype) initWithDevice: (GCKDevice *)  device
clientPackageName: (NSString *)  clientPackageName
ignoreAppStateNotifications: (BOOL)  ignoreAppStateNotifications 

指定イニシャライザ。

指定されたデバイスを制御するための新しい GCKDeviceManager を構築します。

ignoreAppStateNotificationsNO の場合、オブジェクトはアプリの状態の変化をリッスンし、アプリがバックグラウンドに移行するとデバイスから自動的に切断され、アプリがフォアグラウンドに戻るとデバイスへの再接続を試みます。

ignoreAppStateNotificationsYES の場合、オブジェクトはこれらの通知をリッスンしません。接続のライフサイクルを管理するのはアプリの責任となります。一般的に、バックグラウンドで実行されている iOS アプリは無期限に実行を継続できず、アクティブなネットワーク接続は最終的にオペレーティング システムによって閉じられます。

Parameters
deviceThe device to control.
clientPackageNameThe client package name.
ignoreAppStateNotificationsWhether this object will ignore app state notifications.
- (void) connect

デバイスに接続します。

- (void) disconnect

デバイスとの接続を解除します。

これは明示的な切断です。

connect が呼び出された後、このオブジェクトがオーナーによってリリースされるまでの間に、切断メソッドのいずれかを呼び出す必要があります。

- (void) disconnectWithLeave: (BOOL)  leaveApplication

デバイスとの接続を解除します。

connect が呼び出された後、このオブジェクトがオーナーによってリリースされるまでの間に、切断メソッドのいずれかを呼び出す必要があります。

Parameters
leaveApplicationYES 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
channelThe channel.
戻り値
チャンネルが追加された場合は
YES、その名前空間にすでにチャンネルが関連付けられているため追加されなかった場合は NO
- (BOOL) removeChannel: (GCKCastChannel *)  channel

以前に追加されたチャンネルを削除します。

Parameters
channelThe channel.
戻り値
チャンネルが削除された場合は
YES、指定されたチャンネルが以前に添付されていなかったために削除されなかった場合は NO
- (NSInteger) launchApplication: (NSString *)  applicationID

アプリケーションを起動します。

Parameters
applicationIDThe application ID.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) launchApplication: (NSString *)  applicationID
withLaunchOptions: (GCKLaunchOptions *__nullable)  launchOptions 

指定された起動オプションを使用してアプリケーションを起動します。

Parameters
applicationIDThe application ID.
launchOptionsThe launch options for this request. If nil, defaults will be used.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) launchApplication: (NSString *)  applicationID
relaunchIfRunning: (BOOL)  relaunchIfRunning 

アプリケーションを起動します。必要に応じて、すでに実行中の場合は再起動します。

Deprecated:
代わりに launchApplication:withLaunchOptions: を使用してください。
Parameters
applicationIDThe application ID.
relaunchIfRunningIf YES, relaunches the application if it is already running instead of joining the running application.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) joinApplication: (NSString *__nullable)  applicationID

アプリケーションに参加します。

Parameters
applicationIDThe 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
applicationIDThe application ID.
sessionIDThe application session ID.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (BOOL) leaveApplication

現在のアプリケーションを終了します。

戻り値
メッセージを送信できなかった場合は
NO
- (NSInteger) stopApplication

実行中のアプリケーションを停止します。

戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) stopApplicationWithSessionID: (NSString *__nullable)  sessionID

指定されたアプリケーション セッション ID を持つアプリケーションを停止します。

指定されたセッション ID がレシーバーでアクティブでなくなった場合、リクエストは失敗します。

Parameters
sessionIDThe application session ID, which may not be nil.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) setVolume: (float)  volume

システム音量を設定します。

Parameters
volumeThe new volume, in the range [0.0, 1.0]. Out of range values will be silently clipped.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) setMuted: (BOOL)  muted

ミュートのオン / オフを切り替えます。

Parameters
mutedWhether audio should be muted or unmuted.
戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID
- (NSInteger) requestDeviceStatus

デバイスの現在のステータスをリクエストします。

これにより、更新されたステータス情報が受信されると、すべてのデリゲート ステータス更新コールバックが 1 回呼び出されます。

戻り値
リクエスト ID。リクエストを送信できなかった場合は kGCKInvalidRequestID

プロパティの詳細

- (BOOL) ignoreAppStateNotifications
readnonatomicassign

このオブジェクトがアプリの状態通知をリッスンするかどうか。

このフラグはイニシャライザーで指定できます。デフォルト値は NO です。

- (GCKConnectionState) connectionState
readnonatomicassign

デバイス マネージャーの現在の接続状態。

- (GCKConnectionState) applicationConnectionState
readnonatomicassign

デバイス マネージャーの現在のアプリケーション接続状態。

- (BOOL) isConnected
readnonatomicassign

デバイス マネージャーがデバイスへの接続を確立している場合は true。

Deprecated:
connectionState を使用します。
- (BOOL) isConnectedToApp
readnonatomicassign

デバイス マネージャーがデバイス上のアプリへの接続を確立している場合は true。

Deprecated:
applicationConnectionState を使用します。
- (BOOL) isReconnecting
readnonatomicassign

デバイス マネージャーが一時的なイベント(アプリがバックグラウンドに移行した、ネットワーク エラーが発生したが再接続で解決する可能性があるなど)により切断された場合は true。

デバイス マネージャーが一時的なイベントの後に再接続を試みている間は、切断/接続のコールバックは呼び出されませんが、プロパティは常に実際の現在の状態を反映し、監視できます。

- (NSTimeInterval) reconnectTimeout
readwritenonatomicassign

ソケットが一時的なエラーで切断された場合、この時間だけ再接続が試行されます。

デフォルトのタイムアウトは 15 秒です。

- (GCKDevice*) device
readnonatomicassign

この GCKDeviceManager によって制御されているデバイス。

- (id<GCKDeviceManagerDelegate>) delegate
readwritenonatomicweak

GCKDeviceManager から通知を受け取るためのデリゲート。

- (float) deviceVolume
readnonatomicassign

デバイスの現在の音量([0.0, 1.0] の範囲)。不明な場合は 0。

- (BOOL) deviceMuted
readnonatomicassign

デバイスの現在のミュート状態(不明な場合は NO)。

- (GCKActiveInputStatus) activeInputStatus
readnonatomicassign

デバイスの現在の「アクティブな入力」ステータス。

- (GCKStandbyStatus) standbyStatus
readnonatomicassign

デバイスの現在の「スタンバイ」ステータス。

- (NSString*) applicationSessionID
readnonatomiccopy

現在接続されているレシーバー アプリケーションのアプリケーション セッション ID(ある場合)。ない場合は nil

受信側アプリが起動されるたびに(同じアプリが再起動される場合も含む)、新しい一意のセッション ID が生成され、受信側アプリが実行されている限り有効です。

- (GCKApplicationMetadata*) applicationMetadata
readnonatomiccopy

レシーバーで現在実行中のレシーバー アプリケーションのメタデータ(ある場合)。ない場合は nil

- (NSString*) applicationStatusText
readnonatomiccopy

現在実行中のレシーバー アプリケーションから最後に報告されたステータス テキスト(ある場合)。ない場合は nil