MifareClassic 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供存取 MIFARE Classic 屬性及 I/O 操作的 Tag存取。
[Android.Runtime.Register("android/nfc/tech/MifareClassic", DoNotGenerateAcw=true)]
public sealed class MifareClassic : Android.Nfc.Tech.BasicTagTechnology, IDisposable
[<Android.Runtime.Register("android/nfc/tech/MifareClassic", DoNotGenerateAcw=true)>]
type MifareClassic = class
inherit BasicTagTechnology
interface ITagTechnology
interface ICloseable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 屬性
- 實作
備註
提供存取 MIFARE Classic 屬性及 I/O 操作的 Tag存取。
利用 MifareClassic取得一個#get物件。
MIFARE 經典版也稱為 MIFARE 標準版。
MIFARE Classic 標籤被劃分為多個區塊,每個區塊又再細分為區塊。 區塊大小總是 16 位元組(#BLOCK_SIZE。 產業規模各異。
<ul><li>MIFARE Classic Mini 為 320 位元組,#SIZE_MINI每個扇區有 4 個區塊。
<li>MIFARE Classic 1k 為 1024 位元組(#SIZE_1K),每個區塊有 16 個扇區,每扇區有 4 個區塊。
<li>MIFARE Classic 2k 為 2048 位元組(#SIZE_2K),每個區塊有 32 個扇區,每個區塊為 4 個區塊。
<mifare>classic 4k 是 4096 位元組(#SIZE_4K)。 前32個區塊包含4個區塊,最後8個區塊包含16個區塊。
</ul>
MIFARE Classic 標籤要求在該扇區執行其他 I/O 操作前,先以每個扇區為單位進行認證。 每個扇區有兩個金鑰,ACL 位決定在用金鑰認證後該扇區允許的 I/O 操作。
#authenticateSectorWithKeyA 和 #authenticateSectorWithKeyB。
此類別定義了三種知名的認證金鑰:#KEY_DEFAULT、、#KEY_MIFARE_APPLICATION_DIRECTORY#KEY_NFC_FORUM。
<ul><li>#KEY_DEFAULT 是 MIFARE Classic 的預設出廠金鑰。
<li>#KEY_MIFARE_APPLICATION_DIRECTORY 是根據 MIFARE 應用目錄(MAD)規範格式化的 MIFARE Classic 卡片的知名金鑰。
<li>#KEY_NFC_FORUM 是 MIFARE Classic 卡片的知名金鑰,該卡依據 NXP 規範在 MIFARE Classic 上格式化 NDEF。
此類別在 Android NFC 裝置上的實作為選用。 若未實作,則MifareClassic永遠不會在 中列舉。Tag#getTechList 若列舉完成,則 MifareClassic 所有 I/O 操作皆可支援,NDEF Ndef#MIFARE_CLASSIC 標籤也會被支援。 無論哪種情況,都會 NfcA 在標籤上列舉,因為所有 MIFARE Classic 標籤也 NfcA都是 。
<強>注意:</strong> 執行 I/O 操作的方法需要取得權限 android.Manifest.permission#NFC 。
Java 文件 android.nfc.tech.MifareClassic。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
欄位
| 名稱 | Description |
|---|---|
| BlockSize |
MIFARE Classic 區塊大小(以位元組為單位) |
| Size1k |
已淘汰.
標籤包含16個區域,每個區域有4個區塊。 |
| Size2k |
已淘汰.
標籤包含32個扇區,每個扇區有4個區塊。 |
| Size4k |
已淘汰.
標籤包含40個區域。 |
| SizeMini |
已淘汰.
標籤包含 5 個扇區,每個扇區有 4 個區塊。 |
| TypeClassic |
已淘汰.
MIFARE 經典標籤 |
| TypePlus |
已淘汰.
MIFARE Plus 標籤 |
| TypePro |
已淘汰.
MIFARE Pro 標籤 |
| TypeUnknown |
已淘汰.
一款未知類型的 MIFARE Classic 相容卡 |
屬性
| 名稱 | Description |
|---|---|
| BlockCount |
回傳 MIFARE Classic 區塊的總數。 |
| Class |
回傳此 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| IsConnected |
輔助工具用以指示是否應該允許 I/O 操作。 |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| JniPeerMembers |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| KeyDefault |
預設的出廠金鑰。 |
| KeyMifareApplicationDirectory |
這是根據 MIFARE Application Directory(MAD)規範格式化標籤的知名金鑰。 |
| KeyNfcForum |
這是根據 MIFARE Classic 規範中 NDEF 格式化標籤的知名金鑰。 |
| MaxTransceiveLength |
回傳可傳送的最大位元組數。 |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| SectorCount |
回傳 MIFARE Classic 區塊數量。 |
| Size |
回傳標籤大小(位元組) |
| Tag |
把這個Tag物體背後的物體拿ITagTechnology出來。 |
| ThresholdClass |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| ThresholdType |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Timeout |
以毫秒計時獲得當前 |
| Type |
回傳此 MIFARE Classic 相容標籤的類型。 |
方法
| 名稱 | Description |
|---|---|
| AuthenticateSectorWithKeyA(Int32, Byte[]) |
用鍵A驗證一個區塊。 |
| AuthenticateSectorWithKeyB(Int32, Byte[]) |
用鍵 B 驗證一個區塊。 |
| BlockToSector(Int32) |
回傳包含該區塊的區塊。 |
| Clone() |
建立並回傳此物件的副本。 (繼承來源 Object) |
| Close() |
從這個 ITagTechnology 物件中停用對標籤的 I/O 操作,並釋放資源。 |
| Connect() |
啟用這個 ITagTechnology 物件對標籤的 I/O 操作。 |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Decrement(Int32, Int32) |
遞減一個值區塊,將結果儲存在標籤上的臨時區塊中。 |
| DecrementAsync(Int32, Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Dispose() |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Equals(Object) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Equals(Object) |
表示是否有其他物體「等同」於此物。 (繼承來源 Object) |
| Get(Tag) |
取得該標籤的實例 |
| GetBlockCountInSector(Int32) |
回傳該區塊的區塊數量。 |
| GetHashCode() |
回傳物件的雜湊碼值。 (繼承來源 Object) |
| Increment(Int32, Int32) |
遞增一個值區塊,並將結果儲存在標籤上的臨時區塊中。 |
| IncrementAsync(Int32, Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| JavaFinalize() |
已淘汰.
當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。 (繼承來源 Object) |
| Notify() |
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
喚醒所有等待該物件監視器的執行緒。 (繼承來源 Object) |
| ReadBlock(Int32) |
讀取16位元組區塊。 |
| ReadBlockAsync(Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Restore(Int32) |
從一個值區塊複製到臨時區塊。 |
| RestoreAsync(Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| SectorToBlock(Int32) |
返回指定區域的第一個區塊。 |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| ToArray<T>() |
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToString() |
回傳物件的字串表示。 (繼承來源 Object) |
| Transceive(Byte[]) |
將原始 NfcA 資料傳送到標籤並接收回應。 |
| TransceiveAsync(Byte[]) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| Transfer(Int32) |
從暫存區塊複製到值區塊。 |
| TransferAsync(Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| UnregisterFromRuntime() |
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| Wait() |
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| Wait(Int64) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| WriteBlock(Int32, Byte[]) |
寫入 16 位元組區塊。 |
| WriteBlockAsync(Int32, Byte[]) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.Finalized() |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.JniObjectReferenceControlBlock |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| IJavaPeerable.UnregisterFromRuntime() |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
擴充方法
| 名稱 | Description |
|---|---|
| ConnectAsync(ITagTechnology) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
提供存取 MIFARE Classic 屬性及 I/O 操作的 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |