From ea8b02bbc2d20dc3db5b045fac4e6ddff7f44b7c Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期日, 29 九月 2024 10:30:10 +0800
Subject: [PATCH] 优化NFC模块架构,将一些方法抽调到父类中。修复一些bug

---
 baselibrary/src/main/java/com/dayu/baselibrary/activity/BaseNfcActivity.java |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/activity/BaseNfcActivity.java b/baselibrary/src/main/java/com/dayu/baselibrary/activity/BaseNfcActivity.java
index 2bbdda6..028ffb5 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/activity/BaseNfcActivity.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/activity/BaseNfcActivity.java
@@ -6,8 +6,11 @@
 import android.nfc.NfcAdapter;
 import android.os.Bundle;
 
-import com.dayu.baselibrary.tools.nfc.NfcCommonData;
+import com.dayu.baselibrary.tools.nfc.HuaZhiNfcReadHepler;
+import com.dayu.baselibrary.utils.ModelUtils;
 import com.dayu.baselibrary.utils.TipUtil;
+import com.pos.device.picc.PiccReader;
+import com.pos.device.picc.PiccReaderCallback;
 
 /**
  * author: zuo
@@ -22,14 +25,14 @@
 public abstract class BaseNfcActivity extends BaseActivity {
     protected NfcAdapter mNfcAdapter;
     private PendingIntent mPendingIntent;
-    public static int adapterType = NfcCommonData.defaultType;
+    public static int adapterType = ModelUtils.defaultType;
 
 
     @Override
     protected void onNewIntent(Intent intent) {
         super.onNewIntent(intent);
         switch (adapterType) {
-            case NfcCommonData.defaultType:
+            case ModelUtils.defaultType:
                 onNfcBack(intent);
                 break;
         }
@@ -44,13 +47,30 @@
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        //鍒ゆ柇鏄摢涓満鍨�
-        try {
-            Class.forName("com.pos.device.config.DevConfig");
-            adapterType = NfcCommonData.HuaZhiRongHai;
-        } catch (ClassNotFoundException e) {
-            adapterType = NfcCommonData.defaultType;
+        switch (ModelUtils.getModelType()) {
+            case ModelUtils.defaultType:
+            case ModelUtils.ShangMiType:
+                adapterType = ModelUtils.defaultType;
+                break;
+            case ModelUtils.HuaZhiRongHaiType:
+                adapterType = ModelUtils.HuaZhiRongHaiType;
+                PiccReader.getInstance().startSearchCard(HuaZhiNfcReadHepler.TIMEOUT, new PiccReaderCallback() {
+                    @Override
+                    public void onSearchResult(int result, int cardType) {
+                        if (result == PiccReaderCallback.SUCCESS) {
+                            switch (cardType) {
+                                //浠ヤ笅涓篗1鍗�
+                                case PiccReader.MIFARE_ONE_S50:
+                                case PiccReader.MIFARE_ONE_S70:
+                                    onNfcBack(null);
+                                    break;
+                            }
+                        }
+                    }
+                });
+                break;
         }
+
     }
 
     @Override
@@ -90,6 +110,12 @@
     }
 
 
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+
+    }
+
     /**
      * 妫�娴嬪伐浣�,鍒ゆ柇璁惧鐨凬FC鏀寔鎯呭喌
      *

--
Gitblit v1.8.0