概览
用于执行设备发现和会话构造的抽象基类。
您可以通过扩展此类来支持更多设备类型。如需查看旨在供子类使用的辅助方法列表,请参阅 GCKDeviceProvider(Protected) 类别。新设备提供商使用 registerDeviceProvider: (GCKCastContext) 在框架中注册。
- 辛塞
- 3.0
此类继承 NSObject。
实例方法摘要 | |
(instancetype) | - initWithDeviceCategory: |
指定的初始化程序。更多... | |
(void) | - startDiscovery |
启动新的发现扫描。更多... | |
(void) | - stopDiscovery |
停止发现扫描。更多... | |
(GCKSession *) | - createSessionForDevice:sessionID: |
为给定设备构建新会话,并且可以选择构建现有的会话 ID。更多... | |
(void) | - notifyDidStartDiscovery |
通知发现管理器已开始探索。更多... | |
(void) | - notifyDidPublishDevice: |
通知发现管理器新设备已发布。更多... | |
(void) | - notifyDidUnpublishDevice: |
通知发现管理器先前发布的设备已被取消发布,因为它已不再可用。更多... | |
(void) | - notifyDidUpdateDevice: |
通知发现管理器,之前发布的设备的一个或多个显示属性(例如友好名称或图标)已更改。更多... | |
(GCKDevice *) | - createDeviceWithID:ipAddress:servicePort: |
用于构造新 GCKDevice 实例的工厂方法。更多... | |
属性摘要 | |
NSString * | deviceCategory |
该字符串用于唯一标识将由此提供方发现的设备类型。更多... | |
BOOL | passiveScan |
扫描是否应该是被动扫描。更多... | |
NSArray< GCKDevice * > * | devices |
发现的设备数组。更多... | |
方法详细信息
- (instancetype) initWithDeviceCategory: | (NSString *) | deviceCategory |
指定的初始化程序。
为指定类型的设备构造新的 GCKDeviceProvider。
- Parameters
-
deviceCategory A 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: | (NSString *__nullable) | sessionID | |
为给定设备构建新会话,并且可以选择构建现有的会话 ID。
必须替换为子类。
- Parameters
-
device The device to connect to. sessionID The ID of the session to resume; or nil
to start a new session.
- (void) notifyDidStartDiscovery |
通知发现管理器已开始探索。
由类别“GCKDeviceProvider(Protected)”提供。
- (void) notifyDidPublishDevice: | (GCKDevice *) | device |
通知发现管理器新设备已发布。
由类别“GCKDeviceProvider(Protected)”提供。
- (void) notifyDidUnpublishDevice: | (GCKDevice *) | device |
通知发现管理器先前发布的设备已被取消发布,因为它已不再可用。
由类别“GCKDeviceProvider(Protected)”提供。
- (void) notifyDidUpdateDevice: | (GCKDevice *) | device |
通知发现管理器,之前发布的设备的一个或多个显示属性(例如友好名称或图标)已更改。
由类别“GCKDeviceProvider(Protected)”提供。
- (GCKDevice *) createDeviceWithID: | (NSString *) | deviceID | |
ipAddress: | (NSString *) | ipAddress | |
servicePort: | (uint16_t) | servicePort | |
用于构造新 GCKDevice 实例的工厂方法。
这些参数对应于 GCKDevice 的不可变属性。
- Parameters
-
deviceID The unique ID identifying this device. This value must be unique among all GCKDevice objects that are created by this provider. ipAddress The IP address of the device, in numeric form (for example, @"10.0.0.10"
). May not benil
.servicePort The service port on which connections should be made to this device. May be 0 if a service port is not applicable.
由类别“GCKDeviceProvider(Protected)”提供。
属性详情
|
readnonatomiccopy |
该字符串用于唯一标识将由此提供方发现的设备类型。
|
readwritenonatomicassign |
扫描是否应该是被动扫描。
被动扫描发送发现查询的频率较低,因此效率更高,但结果不会那么新。在用户未主动选择投放目标时执行被动扫描比较合适。并非所有实现都会遵循此属性。
|
readnonatomiccopy |
发现的设备数组。