API version 39
Runtime.StopDiscoverNfcTagAsyncメソッド
iOSAndroidWindows
|
説明 |
DiscoverNfcTagAsyncメソッドで開始した非同期のNFCタグ探索を終了します。
|
|
|
呼出形式 |
Runtime.StopDiscoverNfcTagAsync( );
|
|
|
戻り値 |
なし
|
|
|
引数 |
なし
|
|
|
例外 |
なし
|
|
|
使用例 |
Button BtnAsyncStart {
X = 8;
Y = 8;
Width = 180;
Height = 30;
Title = "非同期走査開始";
FontSize = 8;
/* 非同期NFC走査を開始する。*/
Function OnTouch( e ) {
Runtime.DiscoverNfcTagAsync();
}
}
Button BtnAsyncStop {
X = 8;
Y = 48;
Width = 180;
Height = 30;
Title = "非同期走査停止";
FontSize = 8;
/* 非同期NFC走査を停止する。*/
Function OnTouch( e ) {
Runtime.StopDiscoverNfcTagAsync();
}
}
//{
Function OnNfcTagDiscoveredAsync( e ) {
if (!e.ScanResult) {
print("読取に失敗しました");
return;
}
var nfc = e.NfcConnect;
if (nfc == null) {
print("読取に失敗しました");
return;
}
if (!nfc.IsFelicaTag) {
nfc.Close(true);
print("FeliCa以外のタグが読み取られました");
return;
}
try {
/* システムコード0x0003(Suica)のIDmを取得 */
var pollingResult = nfc.Felica_Polling(0x0003);
var targetIDm = pollingResult.IDm;
/* サービス0x008B(カード情報)から1ブロック取得 */
var blockData = nfc.Felica_Read(targetIDm , 0x008B, 0, 1);
var balance = blockData.byteat(11) + (blockData.byteat(12) * 256);
nfc.Close(true);
print("読取が正常に終了しました");
/* 読取結果を出力 */
MessageBox("Suica残高: " + str(balance) + " 円");
} catch (e) {
nfc.Close(false);
print("読取が異常終了しました");
}
}
}
|
|
|
関連項目 |
||
「オンラインマニュアル」一覧へ戻る
「Bizの宝箱」TOPへ戻る