GCKDeviceProvider クラス

GCKDeviceProvider クラス リファレンス

概要

デバイスの検出とセッションの構築を実行するための抽象基本クラス。

このクラスを拡張することで、その他のデバイスタイプのサポートを追加できます。サブクラスで使用するヘルパー メソッドのリストについては、GCKDeviceProvider(Protected) カテゴリをご覧ください。新しいデバイス プロバイダは、registerDeviceProvider: (GCKCastContext) を使用してフレームワークに登録されます。

開始:
3.0

NSObject を継承します。

インスタンス メソッドの概要

(instancetype) - initWithDeviceCategory:
 指定のイニシャライザ。その他...
 
(void) - startDiscovery
 新しい検出スキャンを開始します。その他...
 
(void) - stopDiscovery
 検出スキャンを停止します。その他...
 
(GCKSession *) - createSessionForDevice:sessionID:sessionOptions:
 指定したデバイスの新しいセッションを作成し、必要に応じて既存のセッション ID を作成します。その他...
 
(GCKSession *) - createSessionForDevice:sessionID:
 指定したデバイスの新しいセッションを作成し、必要に応じて既存のセッション ID を作成します。その他...
 
(void) - notifyDidStartDiscovery
 検出が開始されたことを検出マネージャーに通知します。その他...
 
(void) - notifyDidPublishDevice:
 新しいデバイスが公開されたことをディスカバリー マネージャーに通知します。その他...
 
(void) - notifyDidUnpublishDevice:
 以前に公開したデバイスが利用できなくなったため非公開になったことをディスカバリー マネージャーに通知します。その他...
 
(void) - notifyDidUpdateDevice:
 以前に公開したデバイスの 1 つ以上の表示属性(わかりやすい名前やアイコンなど)が変更されたことをディスカバリー マネージャーに通知します。その他...
 
(GCKDevice *) - createDeviceWithID:ipAddress:servicePort:
 
(GCKDevice *) - createDeviceWithID:networkAddress:servicePort:
 新しい GCKDevice インスタンスを作成するためのファクトリ メソッド。その他...
 

プロパティの概要

NSString * deviceCategory
 このプロバイダで検出されるデバイスのタイプを一意に識別する文字列。その他...
 
BOOL passiveScan
 スキャンをパッシブ スキャンにするかどうか。その他...
 
NSArray< GCKDevice * > * devices
 検出されたデバイスの配列。その他...
 

メソッドの詳細

- (instancetype) initWithDeviceCategory: (NSString *)  deviceCategory

指定のイニシャライザ。

指定されたタイプのデバイス用に新しい GCKDeviceProvider を作成します。

Parameters
deviceCategoryA string that uniquely identifies the type of device that is managed by by this provider.
- (void) startDiscovery

新しい検出スキャンを開始します。

これは(一般的に)非同期処理です。前回のスキャンで検出されたデバイスのいずれかが有効でなくなった場合、プロバイダは現時点でそのデバイスの公開を停止する必要があります。サブクラスでオーバーライドする必要があります。

スキャンが開始されたら(そして最新でないデバイスが非公開になった場合)、プロバイダは notifyDidStartDiscovery (GCKDeviceProvider(Protected)) を呼び出してディスカバリ マネージャーに通知する必要があります。このメソッドの特定の実装で、スキャンの開始時に行う非同期処理がない場合は、戻る前に通知メソッドを直接呼び出すことができます。

- (void) stopDiscovery

検出スキャンを停止します。

サブクラスでオーバーライドする必要があります。

- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

指定したデバイスの新しいセッションを作成し、必要に応じて既存のセッション ID を作成します。

サブクラスでオーバーライドする必要があります。

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
sessionOptionsThe session options, if any; otherwise nil.
開始:
4.0
- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID 

指定したデバイスの新しいセッションを作成し、必要に応じて既存のセッション ID を作成します。

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
Deprecated:
サブクラスでは、代わりに createSessionForDevice:sessionID:sessionOptions を呼び出す必要があります。
- (void) notifyDidStartDiscovery

検出が開始されたことを検出マネージャーに通知します。

カテゴリ GCKDeviceProvider(Protected) で提供されます。

- (void) notifyDidPublishDevice: (GCKDevice *)  device

新しいデバイスが公開されたことをディスカバリー マネージャーに通知します。

カテゴリ GCKDeviceProvider(Protected) で提供されます。

- (void) notifyDidUnpublishDevice: (GCKDevice *)  device

以前に公開したデバイスが利用できなくなったため非公開になったことをディスカバリー マネージャーに通知します。

カテゴリ GCKDeviceProvider(Protected) で提供されます。

- (void) notifyDidUpdateDevice: (GCKDevice *)  device

以前に公開したデバイスの 1 つ以上の表示属性(わかりやすい名前やアイコンなど)が変更されたことをディスカバリー マネージャーに通知します。

カテゴリ GCKDeviceProvider(Protected) で提供されます。

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
ipAddress: (NSString *)  ipAddress
servicePort: (uint16_t)  servicePort 
Deprecated:
IPv4 と IPv6 のサポートには createDeviceWithID:networkAddress:servicePort: を使用します。

新しい GCKDevice インスタンスを作成するためのファクトリ メソッド。パラメータは、GCKDevice の不変プロパティに対応しています。

Parameters
deviceIDThe unique ID identifying this device. This value must be unique among all GCKDevice objects that are created by this provider.
ipAddressThe IP address of the device, in numeric form (for example, @"10.0.0.10"). May not be nil. Supports IPv4 only.
servicePortThe service port on which connections should be made to this device. May be 0 if a service port is not applicable.

カテゴリ GCKDeviceProvider(Protected) で提供されます。

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
networkAddress: (GCKNetworkAddress *)  networkAddress
servicePort: (uint16_t)  servicePort 

新しい GCKDevice インスタンスを作成するためのファクトリ メソッド。

パラメータは、GCKDevice の不変プロパティに対応しています。

Parameters
deviceIDThe unique ID identifying this device. This value must be unique among all GCKDevice objects that are created by this provider.
networkAddressThe IP address of the device, either IPv4 or IPv6
servicePortThe service port on which connections should be made to this device. May be 0 if a service port is not applicable.
開始:
4.2

カテゴリ GCKDeviceProvider(Protected) で提供されます。

物件の詳細

- (NSString*) deviceCategory
readnonatomiccopy

このプロバイダで検出されるデバイスのタイプを一意に識別する文字列。

- (BOOL) passiveScan
readwritenonatomicassign

スキャンをパッシブ スキャンにするかどうか。

パッシブ スキャンでは、検出クエリが送信される頻度が下がるため、効率は高くなりますが、結果は最新のものではなくなります。ユーザーがキャスト ターゲットを選択していないときに、パッシブ スキャンを実行するのが適切です。すべての実装がこのプロパティを使用するわけではありません。

- (NSArray<GCKDevice *>*) devices
readnonatomiccopy

検出されたデバイスの配列。