Sprache

NsdManager Klasse

Definition

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

[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
Vererbung
NsdManager
Attribute

Hinweise

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit. Wenn beispielsweise Gerät A und Gerät B über ein Wi-Fi Netzwerk verbunden sind, kann ein auf Gerät A registriertes Spiel von einem Spiel auf Gerät B ermittelt werden. Ein weiterer Anwendungsfall ist eine Anwendung, die Drucker im Netzwerk erkennt.

Die API unterstützt derzeit DNS-basierte Dienstermittlung und -ermittlung ist derzeit auf ein lokales Netzwerk über Multicast-DNS beschränkt. Die DNS-Dienstermittlung wird unter http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt

Die API ist asynchron, und Antworten auf Anforderungen einer Anwendung befinden sich in Listener-Rückrufen in einem separaten internen Thread.

Es gibt drei Hauptvorgänge, die die API unterstützt : Registrierung, Ermittlung und Auflösung.

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

Eine Anwendung, die sich über ein Netzwerk für andere Anwendungen bewerben muss, um sie zu ermitteln, kann dies mit einem Aufruf von #registerService. Wenn "Example" eine http-basierte Anwendung ist, die HTML-Daten für Peerdienste bereitstellen kann, kann sie einen Namen "Example" mit dem Diensttyp "_http._tcp" registrieren. Eine erfolgreiche Registrierung wird mit einem Rückruf RegistrationListener#onServiceRegistered benachrichtigt und ein Fehler bei der Registrierung wird über RegistrationListener#onRegistrationFailed

Eine Peeranwendung, die nach HTTP-Diensten sucht, kann eine Ermittlung für "_http._tcp" mit einem Aufruf initiieren #discoverServices. Ein gefundener Dienst wird mit einem Rückruf DiscoveryListener#onServiceFound benachrichtigt und ein verloren gegangener Dienst wird benachrichtigt DiscoveryListener#onServiceLost.

Sobald die Peeranwendung den HTTP-Dienst "Example" ermittelt und entweder die Attribute des Diensts lesen oder Daten von der "Example"-Anwendung empfangen möchte, kann sie eine Auflösung initiieren, um die Attribute, Host- und Portdetails aufzulösen #resolveService . Eine erfolgreiche Lösung wird benachrichtigt ResolveListener#onServiceResolved und ein Fehler wird benachrichtigt.ResolveListener#onResolveFailed

Anwendungen können für einen Diensttyp reservieren unter http://www.iana.org/form/ports-service. Vorhandene Dienste finden Sie unter http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml

Java Dokumentation für android.net.nsd.NsdManager.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Felder

Name Beschreibung
ActionNsdStateChanged

Übertragungsabsichtaktion, um anzugeben, ob die Netzwerkdienstermittlung aktiviert oder deaktiviert ist.

ExtraNsdState

Der Nachschlageschlüssel für ein Int, der angibt, ob die Netzwerkdienstermittlung aktiviert oder deaktiviert ist.

FailureAlreadyActive
Veraltet.

Gibt an, dass der Vorgang fehlgeschlagen ist, da er bereits aktiv ist.

FailureBadParameters
Veraltet.

Gibt an, dass der Dienst aufgrund fehlerhafter Parameter nicht aufgelöst werden konnte.

FailureInternalError
Veraltet.

Fehler werden mit RegistrationListener#onRegistrationFailed, , , RegistrationListener#onUnregistrationFailedoder DiscoveryListener#onStartDiscoveryFailedDiscoveryListener#onStopDiscoveryFailed. ResolveListener#onResolveFailed

FailureMaxLimit
Veraltet.

Gibt an, dass der Vorgang fehlgeschlagen ist, da die maximalen ausstehenden Anforderungen aus den Anwendungen erreicht wurden.

FailureOperationNotRunning
Veraltet.

Gibt an, dass der Stoppvorgang fehlgeschlagen ist, da er nicht ausgeführt wird.

NsdStateDisabled

Die Netzwerkdienstermittlung ist deaktiviert.

NsdStateEnabled

Die Netzwerkdienstermittlung ist aktiviert.

ProtocolDnsSd
Veraltet.

Dns-basiertes Dienstermittlungsprotokoll

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
JniPeerMembers

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)

Methoden

Name Beschreibung
Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
DiscoverServices(DiscoveryRequest, IExecutor, NsdManager+IDiscoveryListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

DiscoverServices(String, NsdProtocol, Network, IExecutor, NsdManager+IDiscoveryListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

DiscoverServices(String, NsdProtocol, NetworkRequest, IExecutor, NsdManager+IDiscoveryListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

DiscoverServices(String, NsdProtocol, NsdManager+IDiscoveryListener)

Initiieren Sie die Dienstermittlung, um nach Instanzen eines Diensttyps zu suchen.

Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
DisposeUnlessReferenced()

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
Equals(Object)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
RegisterService(AdvertisingRequest, IExecutor, NsdManager+IRegistrationListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

RegisterService(NsdServiceInfo, NsdProtocol, IExecutor, NsdManager+IRegistrationListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

RegisterService(NsdServiceInfo, NsdProtocol, NsdManager+IRegistrationListener)

Registrieren Sie einen Dienst, der von anderen Diensten ermittelt werden soll.

RegisterServiceInfoCallback(NsdServiceInfo, IExecutor, NsdManager+IServiceInfoCallback)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

ResolveService(NsdServiceInfo, IExecutor, NsdManager+IResolveListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

ResolveService(NsdServiceInfo, NsdManager+IResolveListener)

Auflösen eines ermittelten Diensts.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
StopServiceDiscovery(NsdManager+IDiscoveryListener)

Beenden der Dienstermittlung mit :Android.Net.Nsd.NsdManager.DiscoverServices(System.String,Android.Net.Nsd.NsdProtocol,Android.Net.Nsd.NsdProtocol).

StopServiceResolution(NsdManager+IResolveListener)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
UnregisterService(NsdManager+IRegistrationListener)

Aufheben der Registrierung eines Diensts, der über M:Android.Net.Nsd.NsdManager.RegisterService(Android.Net.Nsd.NsdServiceInfo,Android.Net.Nsd.NsdProtocol,Android.Net.Nsd.Nsd.NsdProtocol).

UnregisterServiceInfoCallback(NsdManager+IServiceInfoCallback)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IJavaPeerable.Disposed()

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

(Geerbt von JavaObject)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Die Network Service Discovery Manager-Klasse stellt die API zum Ermitteln von Diensten in einem Netzwerk bereit.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: