NsdManager Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red.
[Android.Runtime.Register("android/net/nsd/NsdManager", DoNotGenerateAcw=true)]
public sealed class NsdManager : Java.Lang.Object
[<Android.Runtime.Register("android/net/nsd/NsdManager", DoNotGenerateAcw=true)>]
type NsdManager = class
inherit Object
- Herencia
- Atributos
Comentarios
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. Por ejemplo, si el dispositivo A y el dispositivo B están conectados a través de una red de Wi-Fi, un juego registrado en el dispositivo A se puede detectar mediante un juego en el dispositivo B. Otro caso de uso de ejemplo es una aplicación que detecta impresoras en la red.
Actualmente, la API admite la detección y detección de servicios basados en DNS se limita a una red local a través de DNS de multidifusión. La detección de servicios DNS se describe en http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt
La API es asincrónica y las respuestas a las solicitudes de una aplicación se encuentran en devoluciones de llamada del agente de escucha en un subproceso interno independiente.
Hay tres operaciones principales que admite la API: registro, detección y resolución.
Application start
|
|
| onServiceRegistered()
Register any local services /
to be advertised with \
registerService() onRegistrationFailed()
|
|
discoverServices()
|
Maintain a list to track
discovered services
|
|--------->
| |
| onServiceFound()
| |
| add service to list
| |
|<----------
|
|--------->
| |
| onServiceLost()
| |
| remove service from list
| |
|<----------
|
|
| Connect to a service
| from list ?
|
resolveService()
|
onServiceResolved()
|
Establish connection to service
with the host and port information
Una aplicación que necesita anunciarse a través de una red para otras aplicaciones para detectarlo puede hacerlo con una llamada a #registerService. Si Example es una aplicación basada en HTTP que puede proporcionar datos HTML a servicios del mismo nivel, puede registrar un nombre "Example" con el tipo de servicio "_http._tcp". Se notifica un registro correcto con una devolución de llamada a RegistrationListener#onServiceRegistered y se notifica un error al registrarse. RegistrationListener#onRegistrationFailed
Una aplicación del mismo nivel que busca servicios http puede iniciar una detección para "_http._tcp" con una llamada a #discoverServices. Se notifica a un servicio con una devolución de llamada a DiscoveryListener#onServiceFound y se notifica a un servicio perdido en DiscoveryListener#onServiceLost.
Una vez que la aplicación del mismo nivel detecta el servicio http "Ejemplo" y necesita leer los atributos del servicio o desea recibir datos de la aplicación "Ejemplo", puede iniciar una resolución con #resolveService para resolver los atributos, el host y los detalles del puerto. Se notifica una resolución correcta y se notifica ResolveListener#onServiceResolved un error en ResolveListener#onResolveFailed.
Las aplicaciones pueden reservarse para un tipo de servicio en http://www.iana.org/form/ports-service. Los servicios existentes se pueden encontrar en http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
Java documentación para android.net.nsd.NsdManager.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Campos
| Nombre | Description |
|---|---|
| ActionNsdStateChanged |
Acción de intención de difusión para indicar si la detección de servicios de red está habilitada o deshabilitada. |
| ExtraNsdState |
Clave de búsqueda de un valor int que indica si la detección de servicios de red está habilitada o deshabilitada. |
| FailureAlreadyActive |
Obsoletos.
Indica que se produjo un error en la operación porque ya está activo. |
| FailureBadParameters |
Obsoletos.
Indica que el servicio no se ha podido resolver debido a parámetros incorrectos. |
| FailureInternalError |
Obsoletos.
Los errores se pasan con |
| FailureMaxLimit |
Obsoletos.
Indica que se produjo un error en la operación porque se han alcanzado las solicitudes pendientes máximas de las aplicaciones. |
| FailureOperationNotRunning |
Obsoletos.
Indica que se produjo un error en la operación de detención porque no se está ejecutando. |
| NsdStateDisabled |
La detección de servicios de red está deshabilitada |
| NsdStateEnabled |
La detección de servicios de red está habilitada |
| ProtocolDnsSd |
Obsoletos.
Protocolo de detección de servicios basados en Dns |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| JniPeerMembers |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| DiscoverServices(DiscoveryRequest, IExecutor, NsdManager+IDiscoveryListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| DiscoverServices(String, NsdProtocol, Network, IExecutor, NsdManager+IDiscoveryListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| DiscoverServices(String, NsdProtocol, NetworkRequest, IExecutor, NsdManager+IDiscoveryListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| DiscoverServices(String, NsdProtocol, NsdManager+IDiscoveryListener) |
Inicie la detección de servicios para buscar instancias de un tipo de servicio. |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| Equals(Object) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| GetHashCode() |
Devuelve un valor de código hash del objeto. (Heredado de Object) |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| RegisterService(AdvertisingRequest, IExecutor, NsdManager+IRegistrationListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| RegisterService(NsdServiceInfo, NsdProtocol, IExecutor, NsdManager+IRegistrationListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| RegisterService(NsdServiceInfo, NsdProtocol, NsdManager+IRegistrationListener) |
Registre un servicio que otros servicios detectarán. |
| RegisterServiceInfoCallback(NsdServiceInfo, IExecutor, NsdManager+IServiceInfoCallback) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| ResolveService(NsdServiceInfo, IExecutor, NsdManager+IResolveListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| ResolveService(NsdServiceInfo, NsdManager+IResolveListener) |
Resuelva un servicio detectado. |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| StopServiceDiscovery(NsdManager+IDiscoveryListener) |
Detener la detección de servicios iniciada con M:Android.Net.Nsd.NsdManager.DiscoverServices(System.String,Android.Net.Nsd.NsdProtocol,Android.Net.Nsd.Nsd.NsdProtocol). |
| StopServiceResolution(NsdManager+IResolveListener) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto. (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| UnregisterService(NsdManager+IRegistrationListener) |
Anular el registro de un servicio registrado a través de M:Android.Net.Nsd.NsdManager.RegisterService(Android.Net.Nsd.NsdServiceInfo,Android.Net.Nsd.Nsd.NsdProtocol,Android.Net.Nsd.Nsd.NsdProtocol). |
| UnregisterServiceInfoCallback(NsdManager+IServiceInfoCallback) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| Wait() |
Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. (Heredado de JavaObject) |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
La clase Network Service Discovery Manager proporciona la API para detectar servicios en una red. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |