RemoteCallbackList クラス

定義

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

[Android.Runtime.Register("android/os/RemoteCallbackList", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E extends android.os.IInterface" })]
public class RemoteCallbackList : Java.Lang.Object
[<Android.Runtime.Register("android/os/RemoteCallbackList", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E extends android.os.IInterface" })>]
type RemoteCallbackList = class
    inherit Object
継承
RemoteCallbackList
属性

注釈

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。 特に、これは次のとおりです。

<ul><li> 基になる一意のIInterface (IBinderを呼び出すことによって) を通じてそれらを識別するために注意を払って、登録されたIInterface#asBinder IInterface.asBinder()オブジェクトのセットを追跡します。 <li> 登録されている各インターフェイスに IBinder.DeathRecipient IBinder.DeathRecipient をアタッチして、プロセスが消えた場合に一覧から消去できるようにします。 <li> マルチスレッドの着信呼び出しを処理するインターフェイスの基になるリストのロックを実行し、ロックを保持せずにリストのスナップショットを反復処理するスレッドセーフな方法を実行します。 </ul>

このクラスを使用するには、単にサービスと共に単一のインスタンスを作成し、その #register メソッドと #unregister メソッドをクライアントとして呼び出して、サービスに登録および登録解除します。 登録済みクライアントにコールバックするには、 #beginBroadcast#getBroadcastItem、および #finishBroadcastを使用します。

登録されたインターフェイスのプロセスが消えた場合、このクラスはリストから自動的に削除されます。 この状況で追加の作業を行う場合は、 #onCallbackDied メソッドを実装するサブクラスを作成できます。

Javaドキュメント。

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

コンストラクター

名前 説明
RemoteCallbackList()

#FROZEN_CALLEE_POLICY_UNSETを使用して RemoteCallbackList を作成します。

RemoteCallbackList(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

フィールド

名前 説明
FrozenCalleePolicyDrop
古い.

コールバック受信者のプロセスがフリーズすると、コールバックは発生しなかったかのように抑制されます。

FrozenCalleePolicyEnqueueAll
古い.

コールバック受信者のプロセスがフリーズすると、コールバックはエンキューされるため、受信者が unfrozen になった後に呼び出されます。

FrozenCalleePolicyEnqueueMostRecent
古い.

コールバック受信者のプロセスがフリーズすると、最新のコールバックのみがエンキューされ、後で受信者が unfrozen になった後に呼び出されます。

FrozenCalleePolicyUnset
古い.

コールバックは、ターゲット プロセスのフリーズ状態に関係なく、すぐに呼び出されます。

プロパティ

名前 説明
Class

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

(継承元 Object)
Executor

コールバックを非同期的に呼び出すときに使用される Executor を返します。

FrozenCalleePolicy

固定された呼び出し先ポリシーを返します。

Handle

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

(継承元 Object)
JniIdentityHashCode

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

(継承元 Object)
JniManagedPeerState

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
JniPeerMembers

この型の JNI ピア メンバー メタデータを提供します。

MaxQueueSize

最大キュー サイズを返します。

PeerReference

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

(継承元 Object)
RegisteredCallbackCount

登録済みインターフェイスの数を返します。

ThresholdClass

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

ThresholdType

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

メソッド

名前 説明
BeginBroadcast()

代わりに #broadcast(Consumer) を使用して、凍結プロセスを適切に処理します。

Broadcast(IConsumer)

登録されている各インターフェイスで callback を実行します。

Clone()

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

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

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
Dispose()

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

(継承元 Object)
Dispose(Boolean)

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

(継承元 Object)
DisposeUnlessReferenced()

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
Equals(Object)

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
Equals(Object)

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

(継承元 Object)
FinishBroadcast()

#beginBroadcastを呼び出して、以前に開始したブロードキャストの状態をクリーンアップします。

GetBroadcastCookie(Int32)

#getBroadcastItem(int)によって返されるアイテムに関連付けられている Cookie を取得します。

GetBroadcastItem(Int32)

以前に #beginBroadcast で開始されたアクティブなブロードキャスト内の項目を取得します。

GetHashCode()

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

(継承元 Object)
GetRegisteredCallbackCookie(Int32)

現在登録されているインターフェイスに関連付けられているすべての Cookie を返します。

GetRegisteredCallbackItem(Int32)

現在登録されているインターフェイスを返します。

JavaFinalize()

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

(継承元 Object)
Kill()

このインターフェイス リストを無効にします。

Notify()

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

(継承元 Object)
NotifyAll()

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

(継承元 Object)
OnCallbackDied(Object, Object)

リスト内のインターフェイスをホストするプロセスがなくなったときに呼び出されます。

OnCallbackDied(Object)

Cookie を提供しない古いバージョンの #onCallbackDied(E, Object)

Register(Object, Object)

新しいインターフェイスを一覧に追加します。

Register(Object)

Cookie オブジェクトを受け取らない RemoteCallbackList#register(E, Object) の単純なバージョン。

SetHandle(IntPtr, JniHandleOwnership)

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

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

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
ToArray<T>()

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

(継承元 Object)
ToString()

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

(継承元 Object)
Unregister(Object)

#registerで以前に追加されたインターフェイスを一覧から削除します。

UnregisterFromRuntime()

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

(継承元 Object)
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)

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

名前 説明
IJavaPeerable.Disposed()

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
IJavaPeerable.Finalized()

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

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

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

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

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

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

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

通常、 android.app.Service からクライアントへのコールバックを実行するために、リモート インターフェイスの一覧を維持するという面倒な作業を行います。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用対象