左晓为主开发手持机充值管理机
zuojincheng
2025-03-26 1bc1acff2127d61b359800096ad5b904370d9176
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package com.dayu.baselibrary.tools.nfc;
 
import android.content.Intent;
 
import com.dayu.baselibrary.bean.BaseManagerToUserCard;
import com.dayu.baselibrary.bean.BaseUserCardCard;
 
import java.util.List;
import java.util.Map;
 
/**
 * author: zuo
 * Date: 2024-09-25
 * Time: 11:41
 * 备注:不同NFC读取的父类
 */
public abstract class BaseNfcReadHelper extends BaseNFCHelper {
 
 
    public abstract void setIntent(Intent intent);
 
    public abstract String getCradType();
 
    /**
     * 读取M1卡的全部信息
     *
     * @param callback
     */
    public abstract void getAllData(final NFCCallMapback callback);
 
 
    /**
     * 获取1扇区信息
     *
     * @param callback
     */
    public abstract void getOneSectorData(NFCCallListback callback);
 
 
    /**
     * 获取卡号
     *
     * @return
     */
    public abstract String getCardNumber();
 
    /**
     * 获取卡片类型和卡号
     *
     * @return
     */
    public abstract String getCradTypeAndCardNumber();
 
    /**
     * 读取NFC卡的特定扇区信息
     *
     * @param a        扇区
     * @param b        块
     * @param callback
     */
    public abstract void getData(final int a, final int b, final NFCCallByteback callback);
 
 
    /**
     * 同步获取
     *
     * @return
     */
    public abstract List<byte[]> getOnesectorData();
 
 
    /**
     * 同步获取用户卡信息
     *
     * @return
     */
    public abstract BaseUserCardCard getUserCardData(BaseUserCardCard userCardCard);
 
 
    public BaseManagerToUserCard getManagerToUserCardData(BaseManagerToUserCard baseManagerToUserCard) {
        return null;
    }
 
    /**
     * 返回监听类
     */
    public interface NFCCallMapback {
        /**
         * 返回读取nfc卡的全部信息
         *
         * @param data 前面代表扇区 四个块的数据用#号隔开
         */
        void callBack(Map<String, List<byte[]>> data);
 
 
        void error(int code);
    }
 
    /**
     * 返回监听类
     */
    public interface NFCCallListback {
        /**
         * 返回读取nfc卡的全部信息
         *
         * @param data 前面代表扇区 四个块的数据用#号隔开
         */
        void callBack(List<byte[]> data);
 
 
        void error(int code);
    }
 
 
    public interface NFCCallByteback {
        /**
         * 返回读取nfc卡的全部信息
         *
         * @param data 前面代表扇区 四个块的数据用#号隔开
         */
 
        void callBack(byte[] data);
 
        void error(int code);
    }
 
 
}