我有一些使用NFC的卡(例如学生证或借记卡)。这些卡不使用NDEF来存储数据。如何获得这些卡的有效载荷?
目前,我使用以下代码:
if (intent.getAction() != null && NfcAdapter.ACTION_TECH_DISCOVERED.equals(intent.getAction()))
{
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
}
谁能发现我如何获得标签的有效载荷?
卡的技术为
android.nfc.tech.IsoDep
和android.nfc.tech.NfcA
。 最佳答案
您可以这样获得NfcA对象:
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
NfcA nfcA = NfcA.get(tag);
在您可以通过如下发送APDU与标记进行通信之后:
byte[] apdu = [...];
byte response = nfcA.transceive(apdu);