作者ian90911 (ianchu)
看板AndroidDev
标题[问题] 用NFC去读mifare卡的UID
时间Sun Apr 15 16:39:46 2012
最近在摸NFC的功能,结果马上就遇到问题
我是用这篇文章的程式去跑
缩网址
http://ppt.cc/Th0Y
http://mifareclassicdetectiononandroid.blogspot.com/2011/04/reading-mifare-
classic-1k-from-android.html
手机是galaxy nexus 4.0.2
基本上也没有什麽改变
程式码
http://paste.ideaslabs.com/show/8H0A9QOVAc
只是在读到ID後把它丢到TEXTVIEW
不过却连
if (NfcAdapter.ACTION_TECH_DISCOVERED.equals(action))
这行都过不去
不知道问题出在哪里,请各位指点一下了
-----
结果马上就找出问题了
应该用ACTION_NDEF_DISCOVERED才能读过去
不过我参考这篇文章
缩网址
http://ppt.cc/xW;U
的做法去存ID
Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
byte[] id = tagFromIntent.getId();
结果出来还是会有乱数(RID),但是我用NFC Taginfo读的到UID
是不是还有什麽方法呢
--
原来要把byte array 转16进位後在贴成字串
问题解决了
※ 编辑: ian90911 来自: 140.128.80.153 (04/15 17:41)
1F:推 givemepass:我之前也遇到相同问题 也是相同解法XD 04/15 20:03
2F:推 swatch0811:因为UID摆在Data block 0所以我是使用auth後再直接读 04/16 22:47
3F:→ swatch0811:以後r/w记得也都要byte的型式存取 04/16 22:48