From 8e3719a37a6be0c9e244a0160b5f2f3331ca3122 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期四, 30 十一月 2023 15:11:38 +0800 Subject: [PATCH] 支持虚拟卡读取 --- app/src/main/java/com/dayu/recharge/tools/NfcReadHelper.java | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/dayu/recharge/tools/NfcReadHelper.java b/app/src/main/java/com/dayu/recharge/tools/NfcReadHelper.java index 650415d..5b9747f 100644 --- a/app/src/main/java/com/dayu/recharge/tools/NfcReadHelper.java +++ b/app/src/main/java/com/dayu/recharge/tools/NfcReadHelper.java @@ -24,13 +24,13 @@ */ public class NfcReadHelper extends BaseNFCHelper { - private Tag tag; + private Tag mTag; // private NFCCallback callback; private static NfcReadHelper helper; public NfcReadHelper(Intent intent) { - this.tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG); + this.mTag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG); } @@ -48,6 +48,23 @@ } /** + * 鍗曚緥鍒濆鍖� + * + * @param intent + * @return + */ + public static NfcReadHelper getInstence(Tag tag) { + if (helper == null) { + helper = new NfcReadHelper(tag); + } + return helper; + } + + public NfcReadHelper(Tag tag) { + mTag = tag; + } + + /** * 鑾峰彇鐢ㄦ埛鍗′俊鎭� * * @return @@ -55,7 +72,7 @@ public UserCard getUserCardData() { UserCard userCard = null; Map<String, List<byte[]>> map = new HashMap<>(); - MifareClassic mfc = MifareClassic.get(tag); + MifareClassic mfc = MifareClassic.get(mTag); if (null != mfc) { try { //閾炬帴NFC @@ -113,7 +130,7 @@ public String getCradType() { - MifareClassic mfc = MifareClassic.get(tag); + MifareClassic mfc = MifareClassic.get(mTag); if (null != mfc) { try { mfc.connect(); @@ -154,7 +171,7 @@ */ public void getAllData(final NFCCallMapback callback) { Map<String, List<byte[]>> map = new HashMap<>(); - MifareClassic mfc = MifareClassic.get(tag); + MifareClassic mfc = MifareClassic.get(mTag); if (null != mfc) { try { //閾炬帴NFC @@ -225,7 +242,7 @@ MifareClassic mfc = null; try { - mfc = MifareClassic.get(tag); + mfc = MifareClassic.get(mTag); } catch (Exception e) { e.printStackTrace(); } @@ -295,7 +312,7 @@ @Override public void run() { Map<String, List<String>> map = new HashMap<>(); - MifareClassic mfc = MifareClassic.get(tag); + MifareClassic mfc = MifareClassic.get(mTag); if (null != mfc) { try { mfc.connect(); -- Gitblit v1.8.0