[問題] 用NFC去讀mifare卡的UID(已解決)

看板AndroidDev作者 (ianchu)時間12年前 (2012/04/15 16:39), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串1/1
最近在摸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)

04/15 20:03, , 1F
我之前也遇到相同問題 也是相同解法XD
04/15 20:03, 1F

04/16 22:47, , 2F
因為UID擺在Data block 0所以我是使用auth後再直接讀
04/16 22:47, 2F

04/16 22:48, , 3F
以後r/w記得也都要byte的型式存取
04/16 22:48, 3F
文章代碼(AID): #1FYebKSo (AndroidDev)