From 2b02b6e854a56a511588e4865ddf2c6597675329 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 16 六月 2025 16:04:54 +0800
Subject: [PATCH] feat(nfc): 添加读卡功能并优化写卡流程

---
 baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NfcReadAdapter.java |   46 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NfcReadAdapter.java b/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NfcReadAdapter.java
index f8d4288..e3d8fbd 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NfcReadAdapter.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NfcReadAdapter.java
@@ -3,9 +3,13 @@
 import android.app.Activity;
 import android.content.Intent;
 
+import androidx.annotation.NonNull;
+
 import com.dayu.baselibrary.activity.BaseNfcActivity;
 import com.dayu.baselibrary.bean.BaseUserCardCard;
 import com.dayu.baselibrary.utils.ModelUtils;
+
+import org.jetbrains.annotations.NotNull;
 
 import java.util.List;
 
@@ -19,10 +23,15 @@
 
     NativeNfcReadHelper nativeNfcReadHelper;
 
+    @Override
+    public void setIntent(Intent intent) {
+        nativeNfcReadHelper.setIntent(intent);
+    }
+
     public NfcReadAdapter(Intent intent, Activity activity) {
         switch (BaseNfcActivity.adapterType) {
             case ModelUtils.defaultType:
-                nativeNfcReadHelper = new NativeNfcReadHelper(intent, activity);
+                nativeNfcReadHelper = NativeNfcReadHelper.getInstence(intent, activity);
                 break;
         }
 
@@ -60,22 +69,42 @@
 
     @Override
     public String getCardNumber() {
+        return getCardNumber(false);
+    }
+
+
+    public String getCardNumber(boolean isChangePS) {
         switch (BaseNfcActivity.adapterType) {
             case ModelUtils.defaultType:
                 return nativeNfcReadHelper.getCardNumber();
-
-
         }
         return "";
     }
+
+
+    public String getCardNumberNoClose() {
+        switch (BaseNfcActivity.adapterType) {
+            case ModelUtils.defaultType:
+                return nativeNfcReadHelper.getCardNumberNoClose();
+        }
+        return "";
+    }
+
 
     @Override
     public String getCradTypeAndCardNumber() {
         switch (BaseNfcActivity.adapterType) {
             case ModelUtils.defaultType:
                 return nativeNfcReadHelper.getCradTypeAndCardNumber();
+        }
+        return "";
+    }
 
-
+    @Override
+    public String getCradTypeAndCardNumber(int sectorIndex, int blockIndex, int cardTypeIndex) {
+        switch (BaseNfcActivity.adapterType) {
+            case ModelUtils.defaultType:
+                return nativeNfcReadHelper.getCradTypeAndCardNumber(sectorIndex, blockIndex, cardTypeIndex);
         }
         return "";
     }
@@ -108,4 +137,13 @@
         }
         return null;
     }
+
+    @Override
+    public BaseUserCardCard getUserCardData(int sectorIndex, BaseUserCardCard userCardCard) {
+        switch (BaseNfcActivity.adapterType) {
+            case ModelUtils.defaultType:
+                return nativeNfcReadHelper.getUserCardData(sectorIndex, userCardCard);
+        }
+        return null;
+    }
 }

--
Gitblit v1.8.0