NsdManager Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- 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 |
| 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 |
| 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 |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| 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 |