Language

Tag クラス

定義

検出された NFC タグを表します。

[Android.Runtime.Register("android/nfc/Tag", DoNotGenerateAcw=true)]
public sealed class Tag : Java.Lang.Object, Android.OS.IParcelable, IDisposable
[<Android.Runtime.Register("android/nfc/Tag", DoNotGenerateAcw=true)>]
type Tag = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
継承
属性
実装

注釈

検出された NFC タグを表します。

Tag は、検出時の NFC タグの状態を表す不変オブジェクトです。 これは、高度な操作を実行するためにクラスを TagTechnology するハンドルとして使用したり、 #getId と #getTechListを介してそれに含まれるテクノロジのセットを介してその ID を直接照会したりするハンドルとして使用できます。 このクラスに渡され、このクラスによって返される配列は <em>not</em> 複製されるため、変更しないように注意してください。

同じ物理タグであっても、タグが検出されるたびに新しいタグ オブジェクトが作成されます (範囲に入ります)。 タグが削除されて範囲に戻された場合は、最新のタグ オブジェクトのみを使用して TagTechnologyを作成できます。

<h3>Tag Dispatch</h3> タグが検出されると、Tag オブジェクトが作成され、NfcAdapter#EXTRA_TAGを介して android.content.Intent 内の Context#startActivity エクストラを介して 1 つのアクティビティに渡されます。 4 段階のディスパッチを使用して、タグを処理するための最も適切なアクティビティを選択します。 Android OS は各ステージを順番に実行し、一致するアクティビティが 1 つ見つかったらすぐにディスパッチを完了します。 1 つのステージで複数の一致するアクティビティが見つかった場合は、Android アクティビティの選択ダイアログが表示され、ユーザーはタグを受け取るアクティビティを選択できます。

タグディスパッチメカニズムは、ユーザーにアクティビティ選択ダイアログを表示せずに、タグを正しいアクティビティにディスパッチする可能性が高いよう設計されています。 これは非常に一時的なものであり、ユーザーが Android デバイスを移動してアプリケーションを選択する必要がある場合は、接続が切断される可能性があるため、NFC の対話に重要です。

<h4>1. フォアグラウンド アクティビティディスパッチ</h4>NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() を呼び出したフォアグラウンド アクティビティが優先されます。 その使用方法については、 NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() に関するドキュメントを参照してください。 <h4>2. NDEF データディスパッチ</h4> タグに NDEF データが含まれている場合、システムは最初のNdefRecordの最初のNdefMessageを検査します。 レコードが URI、SmartPoster、または MIME データである場合、 Context#startActivity は NfcAdapter#ACTION_NDEF_DISCOVEREDで呼び出されます。 URI と SmartPoster レコードの場合、URI は意図のデータ フィールドに格納されます。 MIME レコードの場合、MIME の種類は意図の種類フィールドに格納されます。 これにより、処理方法を知っているデータがタグに存在する場合にのみ、アクティビティを登録できます。 NDEF データはさまざまな種類のタグに格納でき、特定のタグ テクノロジに依存しないため、これはタグのデータを処理する場合に推奨される方法です。 詳細については、NfcAdapter#ACTION_NDEF_DISCOVERED を参照してください。 タグに NDEF データが含まれていない場合、または一致するデータ URI または MIME の種類を持つ NfcAdapter#ACTION_NDEF_DISCOVERED のアクティビティが登録されていない場合、ディスパッチはステージ 3 に移動します。 <h4>3. タグ テクノロジディスパッチ</h4>Context#startActivity は、タグに存在するテクノロジを処理できるアクティビティにタグをディスパッチするために、 NfcAdapter#ACTION_TECH_DISCOVERED で呼び出されます。 テクノロジは、 TagTechnologyのサブクラスとして定義されています。パッケージの android.nfc.techを参照してください。 Android OS は、タグ内の 1 つ以上のテクノロジを処理できるアクティビティを探します。 詳細については、NfcAdapter#ACTION_TECH_DISCOVERED を参照してください。 <h4>4. フォールバック ディスパッチ</h4> アクティビティが一致していない場合、 Context#startActivity は NfcAdapter#ACTION_TAG_DISCOVEREDで呼び出されます。 これはフォールバック メカニズムとして意図されています。 NfcAdapter#ACTION_TAG_DISCOVEREDを参照してください。

<h3>NFC タグの背景</h3> NFC タグはパッシブ NFC デバイスであり、この Android デバイスの NFC フィールドを利用し、範囲内にあります。 タグは、ステッカー、カード、キーフォブなど、多くの形式で提供されたり、より洗練されたデバイスに埋め込まれたりすることができます。

タグには、さまざまな機能を備えることができます。 単純なタグは単に読み取り/書き込みセマンティクスを提供し、読み取り専用にする 1 回限りのプログラミング可能な領域を含みます。 より複雑なタグは、数学演算とセクターごとのアクセス制御と認証を提供します。 最も高度なタグには、タグで実行されるコードとの複雑な対話を可能にする動作環境が含まれています。 TagTechnology クラスを使用して、NFC タグで使用可能な幅広い機能にアクセスします。

Javaドキュメント。

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

プロパティ

Name 説明
Class

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

(継承元 Object)
Creator
Handle

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

(継承元 Object)
JniIdentityHashCode

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

(継承元 Object)
JniManagedPeerState

検出された NFC タグを表します。

(継承元 JavaObject)
JniPeerMembers

検出された NFC タグを表します。

PeerReference

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

(継承元 Object)
ThresholdClass

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

(継承元 Object)
ThresholdType

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

(継承元 Object)

メソッド

Name 説明
Clone()

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

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

検出された NFC タグを表します。

(継承元 JavaObject)
DescribeContents()

このパーセルのマーシャリング表現に含まれる特殊なオブジェクトの種類について説明します。

Dispose()

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

(継承元 Object)
Dispose(Boolean)

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

(継承元 Object)
DisposeUnlessReferenced()

検出された NFC タグを表します。

(継承元 JavaObject)
Equals(Object)

検出された NFC タグを表します。

(継承元 JavaObject)
Equals(Object)

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

(継承元 Object)
GetHashCode()

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

(継承元 Object)
GetId()

タグ識別子を取得します (タグ識別子がある場合)。

GetTechList()

このタグで使用可能なテクノロジを完全修飾クラス名として取得します。

JavaFinalize()
古い.

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

(継承元 Object)
Notify()

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

(継承元 Object)
NotifyAll()

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

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

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

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

検出された NFC タグを表します。

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

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

(継承元 Object)
ToString()

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

(継承元 Object)
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)
WriteToParcel(Parcel, ParcelableWriteFlags)

このオブジェクトをパーセルにフラット化します。

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

Name 説明
IJavaPeerable.Disposed()

検出された NFC タグを表します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

検出された NFC タグを表します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

検出された NFC タグを表します。

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

検出された NFC タグを表します。

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

検出された NFC タグを表します。

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

検出された NFC タグを表します。

(継承元 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

検出された NFC タグを表します。

拡張メソッド

Name 説明
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

検出された NFC タグを表します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用対象