API version 30
iOSAndroidWindows
|
説明 |
ISO-DEPタグに対して、READ RECORDコマンドを送信します。 詳細はISO-DEP(ISO 14443-4)のドキュメントなどを参照してください。
|
|
|
呼出形式 |
var responseAPDU = nfc.IsoDep_ReadRecord( p1, p2, le [, cla] );
|
|
|
戻り値 |
NFCタグから受信したレスポンスAPDUをByteArrayオブジェクトで返します。
|
|
|
引数 |
Integer p1 |
コマンドのパラメータを0-255の範囲で指定します。 負の値や256以上を指定すると例外FUNC-4が発生します。
|
|
|
Integer p2 |
コマンドのパラメータを0-255の範囲で指定します。 負の値や256以上を指定すると例外FUNC-4が発生します。
|
|
|
Integer le |
レスポンスのデータフィールドのバイト長を1から65536までの範囲で指定します。 0以下の値や65537以上を指定すると例外FUNC-4が発生します。 レスポンスのデータ長はleで指定したバイト長+2byte(ステータスコード)となります。 省略した場合、レスポンスにデータフィールドは含まれません。 |
|
|
Integer cla |
コマンドのクラスを0-255の範囲で指定します。 省略した場合は0になります。 負の値や256以上を指定すると例外FUNC-4が発生します。
|
|
例外 |
FUNC-4 |
引数が不正です。 |
|
|
RTM-88 |
ISO-DEPコマンドの発行に失敗しました。 |
|
|
RTM-89 |
お使いの端末はextended lengthを含むAPDUに対応していません。
|
|
使用例 |
var nfc = null;
try {
nfc = Runtime.DiscoverNfcTag("NFC Type-A/Type-Bのカードをかざしてください");
} catch(e) {
MessageBox("NFCタグ探索失敗");
return;
}
if(!nfc.IsIsoDepTag) {
nfc.Close(false, "NFC Type-A/Type-B以外のタグが読み取られました");
return;
}
try {
nfc.SetMessage("接続済");
/* 読み込む対象のファイルを選択します */
nfc.IsoDep_SelectFile(0x00, 0x00, new byteArray(0xE1, 0x04));
/* Recordを読み取ります(le=0:レコードの全データ) */
var response = nfc.IsoDep_ReadRecord(0x00, 0x04, 0x20);
/* NFCとの通信を終了 */
nfc.Close(true, "書込終了");
//.MessageBox(response.ToHexString());
} catch(e) {
nfc.Close(false, "書込エラー");
}
|
|
|
関連項目 |
||