説明 |
NFCタグの探索を行います。タグが発見されるかキャンセルされるまで処理をブロックします。 iOS版
NFC Type-F(JIS 6319-4, FeliCaタグなど)、Mifare Classic*1、ISO-DEPに対応したタグ*2、およびNFC Type-V*3を扱うことが可能です。
iOS版
|
|
呼出形式 |
var conn = rt.DiscoverNfcTag( [ message [, showDiscoveringDialog ] ] )
|
|
戻り値 |
NFCタグとのやりとりを行うためのNfcTagConnectionオブジェクトを返します
|
|
引数 |
String message |
タグ探索中に表示される文字列を指定します。 デフォルトは空文字列です。 |
|
boolean showDiscoveringDialog |
タグ探索中である旨のダイアログを表示するか否かを指定します。 表示されるダイアログのデザインはNfcTagConnectionクラスの説明を参照して下さい。 デフォルトは$TRUEです。 iOS版
|
例外 |
RTM-48 |
端末にNFCリーダ/ライタが存在しません。 |
|
RTM-49 |
端末のNFCリーダ/ライタが有効になっていません。 |
|
RTM-50 |
NFCタグへのアクセスに失敗しました。 |
|
RTM-51 |
NFCタグの探索がキャンセルされました。
|
使用例 |
var nfc = null; try { nfc = Runtime.DiscoverNfcTag("交通系ICカードをかざしてください"); } catch(e) { MessageBox("NFCタグ探索失敗"); return; } if(!nfc.IsFeliCaTag) { nfc.Close(false, "FeliCa以外のタグが読み取られました"); return; } try { nfc.SetMessage("読取中..."); /* システムコード0x0003(Suica)のIDmを取得*/ var targetIDm = nfc.FeliCa_Polling(0x0003).IDm; /* サービス0x008B(カード情報)から1ブロック取得*/ var blockData = nfc.FeliCa_Read(targetIDm, 0x008B, 0, 1); var balance = blockData.ByteAt(11) + blockData.ByteAt(12) * 256; /* NFCとの通信を終了 */ nfc.Close(true, "Suica残高 : " + str(balance) + "円"); } catch(e) { nfc.Close(false, "読取エラー"); }
|
|
関連項目 |