簡體   English   中英

Android NFC:將APDU命令發送到智能卡時,標簽丟失

[英]Android NFC : Tag lost when APDU command sent to a smart card

我在Android OS(三星Galaxy)上做一個EMV應用程序。

我能夠毫無問題地發送多個APDU命令,但是當我嘗試發送內部身份驗證命令時。 我有此錯誤:標記丟失。 您對這個錯誤的目的有任何想法嗎? 我不是在Android上經過實驗的開發人員,可能我忘記了一些東西。

  • 該命令是正確的。
  • 我可以用另一個命令代替,它可以工作(我的意思是我可以恢復響應)。

在哪種情況下,Android上的NFC通信會中斷?

在這里,您可以在發送命令時看到我的問題:

D / ECInfoGrabber(14088):發送:00 88 00 00 04 14 16 67 3D
D / OpenGLRenderer(14088):刷新緩存(模式0)D / dalvikvm(14088):GC_FOR_ALLOC釋放了227K,4%釋放了14298K / 14855K,暫停了29ms I / dalvikvm-heap(14088):將堆(frag情況)增長到14.142 115216字節分配的MB MB D / dalvikvm(14088):GC_FOR_ALLOC釋放了3K,4%釋放了14408K / 14983K,暫停了15ms

謝謝

一種可能是卡的響應比默認超時設置花費更多的時間。 當卡必須進行一些內部計算時,通常會發生這種情況。 通常在密碼操作(例如身份驗證)的情況下。

您可以使用IsoDep.setTimeout()更改超時值:

 IsoDep iso = IsoDep.get(tag);
 iso.connect();
 iso.setTimeOut(5000); // 5 sec time out
 iso.transceive(apduCommand); // now send your command 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM