我正在Android OS上运行EMV应用程序(Samsung Galaxy)。
我可以毫无问题地发送多个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 case)增长到14.142MB 115216字节分配D / dalvikvm(14088):GC_FOR_ALLOC释放3K,4% 免费14408K / 14983K,暂停15ms
谢谢
答案 0 :(得分:12)
一种可能性是来自卡的响应比默认超时设置花费更多时间。当卡必须进行一些内部计算时,通常会发生这种情况;通常在加密操作(如身份验证)的情况下。
您可以使用IsoDep.setTimeout()
更改超时值:
IsoDep iso = IsoDep.get(tag);
iso.connect();
iso.setTimeOut(5000); // 5 sec time out
iso.transceive(apduCommand); // now send your command