我有不同的标签:
- 亚马逊标签:NfcA http://www.amazon.de/gp/product/B00AESJ3B0/ref=oh_details_o00_s00_i00
- 我的钥匙:NfcA
- 一些广告标签:NfcA,Ndef,MifareUltraLight
我想读取我的钥匙。 UID是20 66 be 52
,ATQA是00 40
,SAK是00 08
(ATQA和SAK与亚马逊钥匙相同,因此我猜它也是Mifare Classic 1KB)
每当我尝试transceive(byte[])
时,都会捕获TagLostException
。有趣的事实:广告标签效果更好,但仍会抛出IOException: Transceive failed
尝试将标签(用于我的钥匙)解析为IsoDep
或MifareClassic
会引发Nullpointer
。只有NfcA
有效,但我无法从标签中读取任何数据。
有人能够提供有效的命令或任何其他方法来从Android中读取内容吗?
MifareClassic mfc = MifareClassic.get(tagFromIntent);
mfc.connect(); //Nullpointer
编辑:似乎问题可能出在我的Nexus 4手机上(主要是为了NFC的应用而购买的:()它似乎不支持MIFARE经典标签。但如果你仍然有想法,请写下来。
SomeNfcTech.get()
是否为空,因为并不是所有技术都保证被支持。 - Nikolay Elenkov