MifareClassic 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 Tag
存取。
[Android.Runtime.Register("android/nfc/tech/MifareClassic", DoNotGenerateAcw=true)]
public sealed class MifareClassic : Android.Nfc.Tech.BasicTagTechnology, IDisposable, Java.Interop.IJavaPeerable
[<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 傳統屬性和 I/O 作業的 Tag
存取。
MifareClassic
使用 #get
取得 物件。
MIFARE 傳統也稱為 MIFARE 標準。
MIFARE 傳統標籤分為磁區,而每個磁區則分成區塊。 區塊大小一律為 16 個位元組, (#BLOCK_SIZE
。 磁區大小會有所不同。 <ul >< li > MIFARE Classic Mini 是 320 個位元組 () #SIZE_MINI
,每個區塊各有 5 個磁區。 <li > MIFARE Classic 1k 是 1024 個位元組 () #SIZE_1K
,每個區塊各有 16 個磁區。 <li > MIFARE Classic 2k 是 2048 個位元組 () #SIZE_2K
,每個區塊各有 32 個磁區。 <li > MIFARE 傳統 4k 是 4096 個位元組, (#SIZE_4K
) 。 前 32 個磁區包含 4 個區塊,最後 8 個磁區包含 16 個區塊。 </ul>
MIFARE 傳統標籤需要個別磁區的驗證,才能執行該磁區的任何其他 I/O 作業。 每個磁區有兩個索引鍵,ACL 位會在使用金鑰進行驗證之後,判斷該磁區允許的 I/O 作業。 #authenticateSectorWithKeyA
和 #authenticateSectorWithKeyB
。
這個類別中定義了三個已知的驗證金鑰: #KEY_DEFAULT
、、 #KEY_MIFARE_APPLICATION_DIRECTORY
#KEY_NFC_FORUM
。 <ul >< li >#KEY_DEFAULT
是 MIFARE Classic 的預設 Factory 金鑰。 <li >#KEY_MIFARE_APPLICATION_DIRECTORY
是 MIFARE 傳統卡片的已知金鑰,已根據 MIFARE 應用程式目錄 (MAD) 規格格式化。 <li >#KEY_NFC_FORUM
是 MIFARE 傳統卡片的已知金鑰,已根據 MIFARE Classic 上的 NDEF 的 NXP 規格進行格式化。
Android NFC 裝置上的這個類別實作是選擇性的。 如果未實作,則 MifareClassic
永遠不會在 中 Tag#getTechList
列舉。 如果已列舉,則會支援所有 MifareClassic
I/O 作業,而且 Ndef#MIFARE_CLASSIC
也支援 NDEF 標籤。 在這兩種情況下, NfcA
也會在 標記上列舉,因為所有 MIFARE 傳統標籤也是 NfcA
。
<p class=「note」 >< strong Note: < /strong >> Methods that perform I/O operations require the android.Manifest.permission#NFC
permission.
的 android.nfc.tech.MifareClassic
JAVA 檔。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
欄位
BlockSize |
MIFARE 傳統區塊的大小 (位元組) |
Size1k |
已淘汰.
標籤包含 16 個磁區,每個磁區各有 4 個區塊。 |
Size2k |
已淘汰.
標籤包含 32 個磁區,每個磁區各有 4 個區塊。 |
Size4k |
已淘汰.
標籤包含 40 個磁區。 |
SizeMini |
已淘汰.
標籤包含 5 個磁區,每個磁區各有 4 個區塊。 |
TypeClassic |
已淘汰.
MIFARE 傳統標籤 |
TypePlus |
已淘汰.
MIFARE Plus 標籤 |
TypePro |
已淘汰.
MIFARE Pro 標籤 |
TypeUnknown |
已淘汰.
未知類型的 MIFARE 傳統相容卡片 |
屬性
BlockCount |
傳回 MIFARE 傳統區塊的總數。 |
Class |
傳回這個 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
IsConnected |
協助程式,指出是否應該執行 I/O 作業。 |
JniIdentityHashCode |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
JniPeerMembers |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
KeyDefault |
預設處理站索引鍵。 |
KeyMifareApplicationDirectory |
根據 MIFARE 應用程式目錄 (MAD) 規格格式化的已知索引鍵。 |
KeyNfcForum |
根據 MIFARE 傳統規格上的 NDEF 格式化的已知索引鍵。 |
MaxTransceiveLength |
傳回可以使用 傳送 |
PeerReference |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
SectorCount |
傳回 MIFARE 傳統磁區的數目。 |
Size |
以位元組為單位傳回標籤的大小 |
Tag |
取得此 Tag 物件所備份 ITagTechnology 的物件。 |
ThresholdClass |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
ThresholdType |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Timeout |
以毫秒為單位取得目前的 |
Type |
傳回此 MIFARE 傳統相容標籤的類型。 |
方法
AuthenticateSectorWithKeyA(Int32, Byte[]) |
使用金鑰 A 驗證磁區。 |
AuthenticateSectorWithKeyB(Int32, Byte[]) |
使用金鑰 B 驗證磁區。 |
BlockToSector(Int32) |
傳回包含指定區塊的磁區。 |
Clone() |
建立並傳回這個 物件的複本。 (繼承來源 Object) |
Close() |
從這個 ITagTechnology 物件停用標記的 I/O 作業,並釋放資源。 |
Connect() |
從這個 ITagTechnology 物件啟用標記的 I/O 作業。 |
Decrement(Int32, Int32) |
遞減值區塊,將結果儲存在標記上的暫存區塊中。 |
DecrementAsync(Int32, Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Dispose() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Dispose(Boolean) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
Get(Tag) |
取得指定標記的 實例 |
GetBlockCountInSector(Int32) |
傳回指定磁區中的區塊數目。 |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
Increment(Int32, Int32) |
遞增值區塊,將結果儲存在標記上的暫存區塊中。 |
IncrementAsync(Int32, Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
JavaFinalize() |
當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。 (繼承來源 Object) |
Notify() |
喚醒正在等候此物件的監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
ReadBlock(Int32) |
讀取 16 位元組區塊。 |
ReadBlockAsync(Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Restore(Int32) |
從值區塊複製到暫存區塊。 |
RestoreAsync(Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
SectorToBlock(Int32) |
傳回指定磁區的第一個區塊。 |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
ToArray<T>() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
Transceive(Byte[]) |
將原始 NfcA 資料傳送至標記並接收回應。 |
TransceiveAsync(Byte[]) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
Transfer(Int32) |
從暫存區塊複製到值區塊。 |
TransferAsync(Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
UnregisterFromRuntime() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
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) |
WriteBlock(Int32, Byte[]) |
寫入 16 位元組區塊。 |
WriteBlockAsync(Int32, Byte[]) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
明確介面實作
IJavaPeerable.Disposed() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.DisposeUnlessReferenced() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.Finalized() |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.JniManagedPeerState |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
擴充方法
ConnectAsync(ITagTechnology) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |
GetJniTypeName(IJavaPeerable) |
提供對 上的 MIFARE 傳統屬性和 I/O 作業的 |