Share via


Tag 類別

定義

表示已探索到的 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 來執行進階作業,或透過 直接查詢其識別碼 #getId ,以及透過 包含 #getTechList 的技術集。 傳遞至此類別並傳回的陣列是 < em > not < /em > 複製的,因此請小心不要修改它們。

每次探索標籤 (進入範圍) 時,都會建立新的標記物件,即使它是相同的實體標記也一樣。 如果已移除標籤,然後傳回至範圍,則只能成功使用最新的標記物件來建立 TagTechnology

<h3 > 標籤分派 < /h3 > 探索標記時, Tag 會建立 物件,並透過 NfcAdapter#EXTRA_TAG 透過 中的 android.content.IntentContext#startActivity 額外專案傳遞至單一活動。 四階段分派可用來選取最適當的活動來處理標記。 Android OS 會依序執行每個階段,並在找到單一比對活動時立即完成分派。 如果在任一階段找到多個相符活動,則會顯示 [Android 活動選擇器] 對話方塊,讓使用者選取活動以接收標記。

標籤分派機制的設計目的是提供將標籤分派至正確活動的機率高,而不會向使用者顯示活動選擇器對話方塊。 這對於 NFC 互動很重要,因為它們非常暫時性,如果使用者必須移動 Android 裝置來選擇應用程式,則連線可能會中斷。

<h4 > 1. 前景活動分派 < /h4 > 已呼叫 NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() 的前景活動會獲得優先順序。 如需其使用方式,請參閱 上的檔 NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() 。 <h4 > 2. NDEF 資料分派 < /h4 > 如果標籤包含 NDEF 資料,系統會檢查第一個 中的第一個 NdefRecordNdefMessage 。 如果記錄是 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 會尋找可處理標籤中一或多項技術的活動。 如需詳細資訊,請參閱 NfcAdapter#ACTION_TECH_DISCOVERED 。 <h4 4 > . 後援分派 < /h4 > 如果未比對任何活動,則會 Context#startActivity 使用 NfcAdapter#ACTION_TAG_DISCOVERED 呼叫 。 這是後援機制。 請參閱 NfcAdapter#ACTION_TAG_DISCOVERED

<h3 > NFC 標籤背景 < /h3 > NFC 標籤是被動 NFC 裝置,由此 Android 裝置的 NFC 欄位所支援,同時位於範圍內。 標籤可以有許多形式,例如貼紙、卡片、按鍵,甚至內嵌在更複雜的裝置中。

標籤可以有各種不同的功能。 簡單的標籤只會提供讀取/寫入語意,並包含一些可程式化區域,讓唯讀。 更複雜的標籤提供數學運算和個別磁區存取控制和驗證。 最複雜的標籤包含作業環境,允許與在 標記上執行的程式碼進行複雜的互動。 使用 TagTechnology 類別來存取 NFC 標籤中可用的各種功能。

android.nfc.Tag JAVA 檔。

此頁面的部分是根據所建立和共用的工作進行修改,並根據 2.5 屬性授權中所述的詞彙來使用。

屬性

Class

傳回這個 Object 的執行時間類別。

(繼承來源 Object)
Creator
Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
JniIdentityHashCode

表示已探索到的 NFC 標記。

(繼承來源 Object)
JniPeerMembers

表示已探索到的 NFC 標記。

PeerReference

表示已探索到的 NFC 標記。

(繼承來源 Object)
ThresholdClass

此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。

(繼承來源 Object)
ThresholdType

此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。

(繼承來源 Object)

方法

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
DescribeContents()

描述這個可封送處理標記法中包含的特殊物件種類。

Dispose()

表示已探索到的 NFC 標記。

(繼承來源 Object)
Dispose(Boolean)

表示已探索到的 NFC 標記。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
GetId()

如果標籤識別碼有一個) ,請取得標籤識別碼 (。

GetTechList()

取得此標籤中可用的技術,作為完整類別名稱。

JavaFinalize()

當垃圾收集判斷物件不再參考物件時,垃圾收集行程會在物件上呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
ToArray<T>()

表示已探索到的 NFC 標記。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

表示已探索到的 NFC 標記。

(繼承來源 Object)
Wait()

讓目前的執行緒等到喚醒為止,通常是 em < notified/em > 或 < em > interrupted < /em > 。 ><

(繼承來源 Object)
Wait(Int64)

讓目前的執行緒等到喚醒為止,通常是 em < notified/em > 或 < em > interrupted < /em > ,或直到經過一定數量的即時為止。 <>

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的執行緒等到喚醒為止,通常是 em < notified/em > 或 < em > interrupted < /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 標記。

適用於