Descripción general
Es una clase base abstracta para realizar el descubrimiento de dispositivos y la construcción de sesiones.
Se puede agregar compatibilidad con tipos de dispositivos adicionales extendiendo esta clase. Consulta la categoría GCKDeviceProvider(Protected) para obtener una lista de métodos de ayuda diseñados para que los usen las subclases. Los nuevos proveedores de dispositivos se registran en el framework con registerDeviceProvider: (GCKCastContext).
- Desde
- 3.0
Hereda de NSObject.
Resumen de métodos de instancia | |
(instancetype) | - initWithDeviceCategory: |
Es el inicializador designado. Más… | |
(void) | - startDiscovery |
Inicia un nuevo análisis de descubrimiento. Más… | |
(void) | - stopDiscovery |
Detiene el análisis de descubrimiento. Más… | |
(GCKSession *) | - createSessionForDevice:sessionID: |
Crea una sesión nueva para el dispositivo determinado y, de manera opcional, 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 detección que se publicó un dispositivo nuevo. Más… | |
(void) | - notifyDidUnpublishDevice: |
Notifica al administrador de descubrimiento que se ha anulado la publicación de un dispositivo publicado anteriormente porque ya no está disponible. Más… | |
(void) | - notifyDidUpdateDevice: |
Notifica al administrador de detección que cambiaron uno o más atributos de visualización (como el nombre descriptivo o los íconos) de un dispositivo publicado anteriormente. Más… | |
(GCKDevice *) | - createDeviceWithID:ipAddress:servicePort: |
Es un 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 única 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 |
Es el array de dispositivos descubiertos. Más… | |
Detalle del método
- (instancetype) initWithDeviceCategory: | (NSString *) | deviceCategory |
Es el inicializador designado.
Crea un nuevo GCKDeviceProvider para dispositivos del tipo especificado.
- Parameters
-
deviceCategory A 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 (comúnmente) una operación asíncrona. Si alguno de los dispositivos que se descubrieron en la exploración anterior ya no es válido, el proveedor debe dejar de publicarlo en este momento. Las subclases deben anular este método.
El proveedor debe notificar al administrador de detección una vez que se haya iniciado el análisis (y se hayan anulado las publicaciones de los dispositivos inactivos) llamando a notifyDidStartDiscovery (GCKDeviceProvider(Protected)). Si una implementación particular de este método no tiene trabajo asíncrono que hacer cuando se inicia un análisis, puede llamar al método de notificación directamente antes de regresar.
- (void) stopDiscovery |
Detiene el análisis de descubrimiento.
Las subclases deben anular este método.
- (GCKSession *) createSessionForDevice: | (GCKDevice *) | device | |
sessionID: | (NSString *__nullable) | sessionID | |
Crea una sesión nueva para el dispositivo determinado y, de manera opcional, un ID de sesión existente.
Las subclases deben anular este método.
- Parameters
-
device The device to connect to. sessionID The 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 detección que se publicó un dispositivo nuevo.
Proporcionado por la categoría GCKDeviceProvider(Protected).
- (void) notifyDidUnpublishDevice: | (GCKDevice *) | device |
Notifica al administrador de descubrimiento que se ha anulado la publicación de un dispositivo publicado anteriormente porque ya no está disponible.
Proporcionado por la categoría GCKDeviceProvider(Protected).
- (void) notifyDidUpdateDevice: | (GCKDevice *) | device |
Notifica al administrador de detección que cambiaron uno o más atributos de visualización (como el nombre descriptivo o los íconos) de un dispositivo publicado anteriormente.
Proporcionado por la categoría GCKDeviceProvider(Protected).
- (GCKDevice *) createDeviceWithID: | (NSString *) | deviceID | |
ipAddress: | (NSString *) | ipAddress | |
servicePort: | (uint16_t) | servicePort | |
Es un método de fábrica para construir instancias de GCKDevice nuevas.
Los parámetros corresponden a propiedades inmutables de un objeto 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.
Proporcionado por la categoría GCKDeviceProvider(Protected).
Detalles de la propiedad
|
readnonatomiccopy |
Es una cadena que identifica de forma única el tipo de dispositivo que descubrirá este proveedor.
|
readwritenonatomicassign |
Indica si el análisis debe ser pasivo.
Un análisis pasivo envía consultas de descubrimiento con menor frecuencia, por lo que es más eficiente, pero los resultados no serán tan recientes. Es adecuado realizar un análisis pasivo cuando el usuario no selecciona de forma activa un dispositivo de destino de Cast. No todas las implementaciones respetarán esta propiedad.
|
readnonatomiccopy |
Es el array de dispositivos descubiertos.