Tag クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
検出された NFC タグを表します。
[Android.Runtime.Register("android/nfc/Tag", DoNotGenerateAcw=true)]
public sealed class Tag : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<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
ハンドルとして使用することも、 を介してその ID と を介して #getId
含まれる #getTechList
テクノロジのセットに対して直接クエリを実行することもできます。 このクラスに渡され、このクラスによって返される配列は<>、複製されていない</em> であるため、変更しないように注意してください。
同じ物理タグであっても、タグが検出されるたびに新しいタグ オブジェクトが作成されます (範囲に入ります)。 タグが削除されて範囲に戻された場合は、最新のタグ オブジェクトのみを正常に使用して を TagTechnology
作成できます。
<h3>タグディスパッチ</h3> タグが検出されると、Tag
オブジェクトが作成され、 を介して のエクストラをNfcAdapter#EXTRA_TAG
介して 1 つのアクティビティにandroid.content.Intent
Context#startActivity
渡されます。 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 タグで使用できる幅広い機能にアクセスします。
このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。
プロパティ
Class |
この |
Creator | |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
JniIdentityHashCode |
検出された NFC タグを表します。 (継承元 Object) |
JniPeerMembers |
検出された NFC タグを表します。 |
PeerReference |
検出された NFC タグを表します。 (継承元 Object) |
ThresholdClass |
この API は Mono for Android インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
ThresholdType |
この API は Mono for Android インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
メソッド
Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
DescribeContents() |
このパーセルのマーシャリング表現に含まれる特殊なオブジェクトの種類について説明します。 |
Dispose() |
検出された NFC タグを表します。 (継承元 Object) |
Dispose(Boolean) |
検出された NFC タグを表します。 (継承元 Object) |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
GetId() |
タグ識別子を取得します (タグ識別子がある場合)。 |
GetTechList() |
このタグで使用できるテクノロジを完全修飾クラス名として取得します。 |
JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションが判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
ToArray<T>() |
検出された NFC タグを表します。 (継承元 Object) |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
UnregisterFromRuntime() |
検出された NFC タグを表します。 (継承元 Object) |
Wait() |
現在のスレッドが起動するまで待機します。通常<は、通知</em> または>< em 中断</em によって待機します>。> (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<は、通知></em> または <>em 中断</em>、または特定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<は、通知></em> または <>em 中断</em>、または特定のリアルタイムが経過するまで待機します。 (継承元 Object) |
WriteToParcel(Parcel, ParcelableWriteFlags) |
このオブジェクトをパーセルにフラット化します。 |
明示的なインターフェイスの実装
IJavaPeerable.Disposed() |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.Finalized() |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.JniManagedPeerState |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
検出された NFC タグを表します。 (継承元 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
検出された NFC タグを表します。 (継承元 Object) |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
検出された NFC タグを表します。 |
GetJniTypeName(IJavaPeerable) |
検出された NFC タグを表します。 |