Clase GCKDeviceProvider

Referencia de la clase GCKDeviceProvider

Descripción general

Una clase base abstracta para realizar el descubrimiento de dispositivos y la construcción de sesiones.

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

Desde
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:sessionOptions:
 Crea una sesión nueva para el dispositivo determinado y, opcionalmente, un ID de sesión existente. Más...
 
(GCKSession *) - createSessionForDevice:sessionID:
 Crea una sesión nueva para el dispositivo determinado y, opcionalmente, un ID de sesión existente. Más...
 
(void) - notifyDidStartDiscovery
 Notifica al administrador de descubrimiento que comenzó 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 publicado anteriormente porque ya no está disponible. Más...
 
(void) - notifyDidUpdateDevice:
 Le notifica al administrador de descubrimiento que cambiaron uno o más atributos de visualización de un dispositivo publicado anteriormente (como el nombre descriptivo o los íconos). Más...
 
(GCKDevice *) - createDeviceWithID:ipAddress:servicePort:
 
(GCKDevice *) - createDeviceWithID:networkAddress:servicePort:
 Método de fábrica para construir instancias de GCKDevice nuevas. Más...
 

Resumen de la propiedad

NSString * deviceCategory
 Es una cadena que identifica de forma exclusiva el tipo de dispositivo que descubrirá este proveedor. Más...
 
BOOL passiveScan
 Indica si el análisis debe ser pasivo. Más...
 
NSArray< GCKDevice * > * devices
 El array de dispositivos detectados. Más...
 

Detalle del método

- (instancetype) initWithDeviceCategory: (NSString *)  deviceCategory

Inicializador designado

Construye 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.

Esta es (por lo general) una operación asíncrona. Si alguno de los dispositivos detectados por el análisis anterior ya no es válido, el proveedor debe anular su publicación en este momento. Debe ser anulada por subclases.

El proveedor debe notificar al administrador de descubrimiento una vez que se haya iniciado el análisis (y se anule la publicación de los dispositivos inactivos) mediante una llamada a notifyDidStartDiscovery (GCKDeviceProvider(Protected)). Si una implementación particular de este método no tiene trabajo asíncrono para realizar cuando se inicia un análisis, puede llamar al método de notificación directamente antes de mostrar un resultado.

- (void) stopDiscovery

Detiene el análisis de detección.

Debe ser anulada por subclases.

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

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

Debe ser anulada por subclases.

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.
Desde
4.0
- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID 

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

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
Deprecated:
En su lugar, las subclases deben llamar a createSessionForDevice:sessionID:sessionOptions.
- (void) notifyDidStartDiscovery

Notifica al administrador de descubrimiento que comenzó 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 publicado anteriormente porque ya no está disponible.

Proporcionado por la categoría GCKDeviceProvider(Protected)

- (void) notifyDidUpdateDevice: (GCKDevice *)  device

Le notifica al administrador de descubrimiento que cambiaron uno o más atributos de visualización de un dispositivo publicado anteriormente (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 
Deprecated:
Usa createDeviceWithID:networkAddress:servicePort para la compatibilidad con IPv4 y con IPv6

Método de fábrica para construir instancias de GCKDevice nuevas. Los parámetros corresponden a las 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. 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.

Proporcionado por la categoría GCKDeviceProvider(Protected)

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

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

Los parámetros corresponden a las 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.
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.
Desde
4.2

Proporcionado por la categoría GCKDeviceProvider(Protected)

Detalles de la propiedad

- (NSString*) deviceCategory
readnonatomiccopy

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

- (BOOL) passiveScan
readwritenonatomicassign

Indica si el análisis debe ser pasivo.

El análisis pasivo envía consultas de descubrimiento con menos frecuencia, por lo que es más eficiente, pero los resultados no serán tan recientes. Conviene realizar un análisis pasivo cuando el usuario no está seleccionando activamente un destino de transmisión. No todas las implementaciones respetarán esta propiedad.

- (NSArray<GCKDevice *>*) devices
readnonatomiccopy

El array de dispositivos detectados.