基于mui框架读取nfc数据_android – 从NFC标签读取数据(IsoDep)

IsoDep允许您通过ISO-14443-4连接与收发操作进行通信.通过该协议应用数据单元(APDU)进行交换.指定格式,您可以在

Wikipedia.找到一个描述

为了突击,要在具有特定应用程序标识符(AID)的智能卡上选择应用程序,您将执行以下APDU命令.结果只是表示ok(9000)或错误.

byte[] SELECT = {

(byte) 0x00, // CLA Class

(byte) 0xA4, // INS Instruction

(byte) 0x04, // P1 Parameter 1

(byte) 0x00, // P2 Parameter 2

(byte) 0x0A, // Length

0x63,0x64,0x63,0x00,0x00,0x00,0x00,0x32,0x32,0x31 // AID

};

Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

IsoDep tag = IsoDep.get(tagFromIntent);

tag.connect();

byte[] result = tag.transceive(SELECT);

if (!(result[0] == (byte) 0x90 && result[1] == (byte) 0x00))

throw new IOException("could not select applet");

选择应用程序后,可以执行特定于应用程序的命令.程序通常用JavaCard编写,它遵循GlobalPlatorm规范.以下示例在上述选择的应用程序上执行返回至多11个字节的字节数组的方法4(0x04).然后将此结果转换为字

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值