Clase GCKDeviceProvider

Referencia de la clase GCKDeviceProvider

Descripción general

Una clase base abstracta para realizar descubrimientos de dispositivos y construir sesiones

Para agregar compatibilidad con tipos de dispositivos adicionales, puedes extender esta clase. Consulta la categoría GCKDeviceProvider(Protected) para obtener una lista de los métodos auxiliares destinados al uso por subclases. Los proveedores de dispositivos nuevos se registran en el framework mediante registerDeviceProvider: (GCKCastContext).

Since
3.0

Hereda NSObject.

Resumen del método de instancia

(instancetype) - initWithDeviceCategory:
 Inicializador designado. Más...
 
(void) - startDiscovery
 Inicia un nuevo análisis de descubrimiento. Más...
 
(void) - stopDiscovery
 Detiene el análisis de detección. Más...
 
(GCKSession *) - createSessionForDevice:sessionID:
 Crea una nueva sesión para el dispositivo determinado y, opcionalmente, un ID de sesión existente. Más...
 
(void) - notifyDidStartDiscovery
 Notifica al administrador de descubrimiento que se inició el descubrimiento. Más...
 
(void) - notifyDidPublishDevice:
 Notifica al administrador de descubrimiento que se publicó un nuevo dispositivo. Más...
 
(void) - notifyDidUnpublishDevice:
 Notifica al administrador de descubrimiento que se anuló la publicación de un dispositivo que se publicó anteriormente porque ya no está disponible. Más...
 
(void) - notifyDidUpdateDevice:
 Notifica al administrador de descubrimiento que se modificaron uno o más de los atributos de visualización de un dispositivo publicado previamente (como el nombre descriptivo o los íconos). Más...
 
(GCKDevice *) - createDeviceWithID:ipAddress:servicePort:
 Método de fábrica para construir instancias GCKDevice nuevas. Más...
 

Resumen de la propiedad

NSString * deviceCategory
 Es una string que identifica de forma exclusiva el tipo de dispositivo que descubrirá este proveedor. Más...
 
BOOL passiveScan
 Si el análisis debe ser pasivo. Más...
 
NSArray< GCKDevice * > * devices
 La matriz de dispositivos descubiertos. Más...
 

Detalle del método

- (instancetype) initWithDeviceCategory: (NSString *)  deviceCategory

Inicializador designado.

Crea un GCKDeviceProvider nuevo para los dispositivos del tipo especificado.

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

Inicia un nuevo análisis de descubrimiento.

(Generalmente, esta es una operación asíncrona). Si alguno de los dispositivos que se descubrió en el análisis anterior ya no es válido, el proveedor deberá anular su publicación en este momento. Deben ser anuladas por subclases.

El proveedor debe notificar al administrador de detección una vez que se inicia el análisis (y se anula la publicación de los dispositivos inactivos) mediante una llamada a notifyDidStartDiscovery (GCKDeviceProvider(Protected)). Si una implementación específica de este método no tiene trabajo asíncrono para hacer cuando se inicia un análisis, puede llamar al método de notificación directamente antes de mostrarlo.

- (void) stopDiscovery

Detiene el análisis de detección.

Deben ser anuladas por subclases.

- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (NSString *__nullable)  sessionID 

Crea una nueva sesión para el dispositivo determinado y, opcionalmente, un ID de sesión existente.

Deben ser anuladas por subclases.

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
- (void) notifyDidStartDiscovery

Notifica al administrador de descubrimiento que se inició el descubrimiento.

Proporcionado por la categoría GCKDeviceProvider(Protected).

- (void) notifyDidPublishDevice: (GCKDevice *)  device

Notifica al administrador de descubrimiento que se publicó un nuevo dispositivo.

Proporcionado por la categoría GCKDeviceProvider(Protected).

- (void) notifyDidUnpublishDevice: (GCKDevice *)  device

Notifica al administrador de descubrimiento que se anuló la publicación de un dispositivo que se publicó anteriormente porque ya no está disponible.

Proporcionado por la categoría GCKDeviceProvider(Protected).

- (void) notifyDidUpdateDevice: (GCKDevice *)  device

Notifica al administrador de descubrimiento que se modificaron uno o más de los atributos de visualización de un dispositivo publicado previamente (como el nombre descriptivo o los íconos).

Proporcionado por la categoría GCKDeviceProvider(Protected).

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
ipAddress: (NSString *)  ipAddress
servicePort: (uint16_t)  servicePort 

Método de fábrica para construir instancias GCKDevice nuevas.

Los parámetros corresponden a propiedades inmutables de un 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.
servicePortThe service port on which connections should be made to this device. May be 0 if a service port is not applicable.

Proporcionado por la categoría GCKDeviceProvider(Protected).

Detalles de la propiedad

- (NSString*) deviceCategory
readnonatomiccopy

Es una string que identifica de forma exclusiva el tipo de dispositivo que descubrirá este proveedor.

- (BOOL) passiveScan
readwritenonatomicassign

Si el análisis debe ser pasivo.

Un análisis pasivo envía consultas de descubrimiento con menos frecuencia, por lo que es más eficiente, pero los resultados no estarán tan actualizados. Es apropiado realizar un análisis pasivo cuando el usuario no selecciona activamente un objetivo de transmisión. No todas las implementaciones respetarán esta propiedad.

- (NSArray<GCKDevice *>*) devices
readnonatomiccopy

La matriz de dispositivos descubiertos.