package com.dayu.henanlibrary.tools; import android.app.Activity; import android.content.Intent; import com.dayu.baselibrary.tools.nfc.BaseNfcReadHelper; import com.dayu.baselibrary.tools.nfc.NfcReadAdapter; import com.dayu.henanlibrary.card.UserCardHN; /** * @author zx * @date 2018/4/23 14:31 * email 1058083107@qq.com * description nfc读取工具类 */ public class NfcReadHelper extends HNBaseHelper { // private NFCCallback callback; private static NfcReadHelper helper; private NfcReadAdapter adapter; public NfcReadHelper(Intent intent, Activity activity) { super(activity); adapter=new NfcReadAdapter(intent,activity); } /** * 单例初始化 * * @param intent * @return */ public static NfcReadHelper getInstence(Intent intent, Activity activity) { if (helper == null) { helper = new NfcReadHelper(intent, activity); } helper.adapter.setIntent(intent); return helper; } /** * 获取用户卡信息 * * @return */ public UserCardHN getUserCardData() { try { return (UserCardHN) adapter.getUserCardData(new UserCardHN()); } catch (Exception e) { e.printStackTrace(); } return null; } public String getCradType() { try { return adapter.getCradType(); } catch (Exception e) { e.printStackTrace(); } return ""; } /** * 读取NFC卡的全部信息 * * @param callback */ public void getAllData(final BaseNfcReadHelper.NFCCallMapback callback) { try { adapter.getAllData(callback); } catch (Exception e) { e.printStackTrace(); } } /** * 获取1扇区信息 * * @param callback */ public void getOneSectorData(BaseNfcReadHelper.NFCCallListback callback) { try { adapter.getOneSectorData(callback); } catch (Exception e) { e.printStackTrace(); } } /** * 读取NFC卡的特定扇区信息 * * @param a 扇区 * @param b 块 * @param callback */ public void getData(final int a, final int b, final BaseNfcReadHelper.NFCCallByteback callback) { try { adapter.getData(a, b, callback); } catch (Exception e) { e.printStackTrace(); } } }