From 12fb3fb97f135bbd78b31a06f8451f9b42a2ed6f Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 26 八月 2024 14:23:24 +0800
Subject: [PATCH] 无网络添加提示

---
 qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/tools/NFCWriteHelper.java |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/tools/NFCWriteHelper.java b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/tools/NFCWriteHelper.java
index 3517fcb..5ce38e4 100644
--- a/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/tools/NFCWriteHelper.java
+++ b/qiheonlinelibrary/src/main/java/com/dayu/qiheonlinelibrary/tools/NFCWriteHelper.java
@@ -11,6 +11,8 @@
 import com.dayu.qiheonlinelibrary.card.UserCard;
 
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author zx
@@ -70,6 +72,7 @@
             int a = 1;
             try {
                 MifareClassic mfc = MifareClassic.get(tag);
+                List<byte[]> list = new ArrayList<>();
                 if (null != mfc) {
                     try {
                         //杩炴帴NFC
@@ -96,7 +99,22 @@
                                 //鍐欏崱
                                 mfc.writeBlock(bIndex + b, data);
                             }
-                            return true;
+                            int bIndex = mfc.sectorToBlock(1);
+                            for (int j = 0; j < 3; j++) {
+                                //璇诲彇鏁版嵁
+                                byte[] data = null;
+                                try {
+                                    data = mfc.readBlock(bIndex);
+                                    bIndex++;
+                                    list.add(data);
+                                } catch (Exception e) {
+                                    e.printStackTrace();
+                                }
+                            }
+                            if (userCard.equlsUserCard(list)) {
+                                return true;
+                            }
+                            return false;
                         }
                         return false;
                     } catch (Exception e) {
@@ -262,13 +280,13 @@
                         boolean isOpen = mfc.authenticateSectorWithKeyA(sector, defauleKey);
                         if (!isOpen) {
                             isOpen = mfc.authenticateSectorWithKeyA(sector, companyKey2);
-                            if (isOpen){
+                            if (isOpen) {
                                 mfc.authenticateSectorWithKeyB(sector, companyKey2);
                             }
                         }
                         if (!isOpen) {
                             isOpen = mfc.authenticateSectorWithKeyA(sector, companyKey);
-                            if (isOpen){
+                            if (isOpen) {
                                 mfc.authenticateSectorWithKeyB(sector, companyKey);
                             }
                         }
@@ -276,7 +294,7 @@
                             //鑾峰彇鍐欑殑鎵囧尯鐨勫潡鐨勬暟閲�
                             int blockCount = mfc.getBlockCountInSector(sector);
                             int blockIndex = mfc.sectorToBlock(sector);
-                            for (int block = 0; block < blockCount ; block++) {
+                            for (int block = 0; block < blockCount; block++) {
                                 // 璺宠繃绗� 0 鎵囧尯鐨勭 0 鍧�
                                 if (sector == 0 && block == 0) {
                                     blockIndex++;
@@ -289,7 +307,6 @@
                                     mfc.writeBlock(blockIndex, initDataBytes);
                                 }
                                 //鍐欏崱
-
                                 blockIndex++;
                             }
                         }

--
Gitblit v1.8.0