Language

NsdManager クラス

定義

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

[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
継承
NsdManager
属性

注釈

Network Service Discovery Manager クラスは、ネットワーク上のサービスを検出するための API を提供します。 たとえば、デバイス A とデバイス B が Wi-Fi ネットワーク経由で接続されている場合、デバイス A に登録されているゲームは、デバイス B 上のゲームによって検出できます。もう 1 つのユース ケースは、ネットワーク上のプリンターを検出するアプリケーションです。

現在、この API は DNS ベースのサービス検出をサポートしており、検出は現在、マルチキャスト DNS 経由のローカル ネットワークに制限されています。 DNS サービスの検出については、 http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt

API は非同期であり、アプリケーションからの要求への応答は、別の内部スレッドのリスナー コールバックにあります。

API でサポートされる 3 つの主要な操作 (登録、検出、解決) があります。

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

他のアプリケーションが検出するためにネットワーク経由で自身をアドバタイズする必要があるアプリケーションは、 #registerServiceの呼び出しでこれを行うことができます。 Example がピア サービスに HTML データを提供できる http ベースのアプリケーションの場合は、サービスの種類 "_http._tcp" に名前 "Example" を登録できます。 登録が成功すると、 RegistrationListener#onServiceRegistered するコールバックが通知され、登録の失敗が通知されます。 RegistrationListener#onRegistrationFailed

http サービスを探しているピア アプリケーションは、 #discoverServicesの呼び出しで "_http._tcp" の検出を開始できます。 見つかったサービスは DiscoveryListener#onServiceFound するコールバックで通知され、失われたサービスは DiscoveryListener#onServiceLostに通知されます。

ピア アプリケーションが "Example" http サービスを検出し、サービスの属性を読み取る必要があるか、"Example" アプリケーションからデータを受信する必要がある場合は、 #resolveService を使用して解決を開始して、属性、ホスト、ポートの詳細を解決できます。 正常な解決は ResolveListener#onServiceResolved に通知され、エラーは ResolveListener#onResolveFailedに通知されます。

アプリケーションは、次のサービスの種類を予約できます。 http://www.iana.org/form/ports-service. 既存のサービスは、次の場所にあります。 http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

フィールド

Name 説明
ActionNsdStateChanged

ネットワーク サービスの検出が有効か無効かを示すブロードキャスト インテント アクション。

ExtraNsdState

ネットワーク サービスの検出が有効か無効かを示す int の参照キー。

FailureAlreadyActive
古い.

操作が既にアクティブであるために失敗したことを示します。

FailureBadParameters
古い.

パラメーターが正しくないため、サービスの解決に失敗したことを示します。

FailureInternalError
古い.

エラーは、 RegistrationListener#onRegistrationFailed、 RegistrationListener#onUnregistrationFailed、 DiscoveryListener#onStartDiscoveryFailed、 DiscoveryListener#onStopDiscoveryFailed 、または ResolveListener#onResolveFailedで渡されます。

FailureMaxLimit
古い.

アプリケーションからの未処理の要求の最大数に達したため、操作が失敗したことを示します。

FailureOperationNotRunning
古い.

停止操作が実行されていないために失敗したことを示します。

FailurePermissionDenied
古い.

呼び出し元に必要なアクセス許可がないため、操作が失敗したことを示します。

NsdStateDisabled

ネットワーク サービスの検出が無効になっている

NsdStateEnabled

ネットワーク サービスの検出が有効になっている

ProtocolDnsSd
古い.

Dns ベースのサービス検出プロトコル

ServicePermissionDenied
古い.

呼び出し元がサービス情報コールバックの登録またはサービスの解決を許可されていないことを示します。

ServicePermissionGranted
古い.

呼び出し元がサービス情報コールバックを登録したり、サービスを解決したりできることを示します。

プロパティ

Name 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
JniPeerMembers

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)
ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)

メソッド

Name 説明
CheckPermissionForService(String, String, IExecutor, IIntConsumer)

呼び出し元がサービス情報コールバックを登録できるか、サービスを解決できるかを確認します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
DiscoverServices(DiscoveryRequest, IExecutor, NsdManager+IDiscoveryListener)

サービスの検出を開始して、サービスの種類のインスタンスを参照します。

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

サービスの検出を開始して、サービスの種類のインスタンスを参照します。

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

サービスの検出を開始して、サービスの種類のインスタンスを参照します。

DiscoverServices(String, NsdProtocol, NsdManager+IDiscoveryListener)

サービスの検出を開始して、サービスの種類のインスタンスを参照します。

Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
Equals(Object)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
RegisterService(AdvertisingRequest, IExecutor, NsdManager+IRegistrationListener)

他のサービスによって検出されるサービスを登録します。

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

他のサービスによって検出されるサービスを登録します。

RegisterService(NsdServiceInfo, NsdProtocol, NsdManager+IRegistrationListener)

他のサービスによって検出されるサービスを登録します。

RegisterServiceInfoCallback(DiscoveryRequest, IExecutor, NsdManager+IServiceInfoCallback)

サービスの更新を検出して追跡するためのコールバックを登録します。

RegisterServiceInfoCallback(NsdServiceInfo, IExecutor, NsdManager+IServiceInfoCallback)

サービスの更新をリッスンするコールバックを登録します。

ResolveService(NsdServiceInfo, IExecutor, NsdManager+IResolveListener)

検出されたサービスを解決します。

ResolveService(NsdServiceInfo, NsdManager+IResolveListener)

検出されたサービスを解決します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
StopServiceDiscovery(NsdManager+IDiscoveryListener)

)で開始されたサービス検出を停止する m:Android.Net.Nsd.NsdManager.DiscoverServices(System.String,Android.Net.Nsd.NsdProtocol,Android.Net.Nsd.NsdProtocol).

StopServiceResolution(NsdManager+IResolveListener)

resolveService(NsdServiceInfo,ResolveListener) で開始されたサービス解決を停止します。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
UnregisterService(NsdManager+IRegistrationListener)

)を介して登録されたサービスの登録を解除する m:Android.Net.Nsd.NsdManager.RegisterService(Android.Net.Nsd.NsdServiceInfo,Android.Net.Nsd.NsdProtocol,Android.Net.Nsd.NsdProtocol).

UnregisterServiceInfoCallback(NsdManager+IServiceInfoCallback)

registerServiceInfoCallback (DiscoveryRequest、Executor、ServiceInfoCallback) に登録されているコールバックの登録を解除します。

Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

Name 説明
IJavaPeerable.Disposed()

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

(継承元 JavaObject)

拡張メソッド

Name 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ローカル ネットワーク上のネットワーク サービスを検出およびアドバタイズするための API を提供します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象