From 1b4835badb3ca32402b6544c668a700c5334d90f Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期二, 26 三月 2024 16:48:31 +0800 Subject: [PATCH] 添加中安身份证识别模块 把IP设置移动到参数设置界面 --- app/src/main/java/com/dayu/recharge/activity/BaseNfcActivity.java | 71 ++++++++++++++++++++++++++++++++--- 1 files changed, 65 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/dayu/recharge/activity/BaseNfcActivity.java b/app/src/main/java/com/dayu/recharge/activity/BaseNfcActivity.java index 5b1e40b..fb08ec3 100644 --- a/app/src/main/java/com/dayu/recharge/activity/BaseNfcActivity.java +++ b/app/src/main/java/com/dayu/recharge/activity/BaseNfcActivity.java @@ -5,11 +5,17 @@ */ +import android.app.Activity; import android.app.PendingIntent; -import android.content.Context; import android.content.Intent; import android.nfc.NfcAdapter; +import android.nfc.Tag; +import android.os.Handler; +import android.provider.Settings; +import com.dayu.recharge.card.UserCard; +import com.dayu.recharge.tools.LoyaltyCardReader; +import com.dayu.recharge.utils.TipUtil; import com.dayu.recharge.utils.ToastUtil; /** @@ -21,21 +27,54 @@ * 鍦╫nNewIntent鏂规硶涓墽琛宨ntent浼犻�掕繃鏉ョ殑Tag鏁版嵁 * 灏哊FC鏍囩鍗¢潬杩戞墜鏈哄悗閮紙NFC鏍囩鍗″彲缃戜笂鑷璐拱锛� */ -public class BaseNfcActivity extends BaseActivity { +public class BaseNfcActivity extends BaseActivity implements LoyaltyCardReader.AccountCallback { + + /** + * 璇ュ崱宸插啓鍏ョ敤鎴蜂俊鎭� + */ + public final static int HAS_USER = 1; + /** + * 璇ュ崱鏈啓鍏ョ敤鎴蜂俊鎭� + */ + public final static int NO_USER = 2; + /** + * 鍏呭�� + */ + public final static int RECHARGE = 3; + + public final static int ERROR = -1; + protected NfcAdapter mNfcAdapter; private PendingIntent mPendingIntent; + volatile UserCard userCard; + Handler handler; + + public LoyaltyCardReader mLoyaltyCardReader; /** * onCreat->onStart->onResume->onPause->onStop->onDestroy * 鍚姩Activity锛岀晫闈㈠彲瑙佹椂. */ + + + + public static int READER_FLAGS = + NfcAdapter.FLAG_READER_NFC_A | NfcAdapter.FLAG_READER_SKIP_NDEF_CHECK; + @Override protected void onStart() { super.onStart(); //姝ゅadapter闇�瑕侀噸鏂拌幏鍙栵紝鍚﹀垯鏃犳硶鑾峰彇message mNfcAdapter = NfcAdapter.getDefaultAdapter(this); + Intent intent = new Intent(this, getClass()); + //涓�鏃︽埅鑾種FC娑堟伅锛屽氨浼氶�氳繃PendingIntent璋冪敤绐楀彛 - mPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this, getClass()), 0); + mPendingIntent = PendingIntent.getActivity(this, 0, intent, 0); + +// mLoyaltyCardReader = new LoyaltyCardReader(this); +// if (mNfcAdapter != null) { +// mNfcAdapter.enableReaderMode(this, mLoyaltyCardReader, READER_FLAGS, null); +// } } @@ -62,22 +101,42 @@ //鎭㈠榛樿鐘舵�� if (mNfcAdapter != null) mNfcAdapter.disableForegroundDispatch(this); +// mNfcAdapter.disableReaderMode(this); + } + +// @Override +// protected void onDestroy() { +// super.onDestroy(); +// if (mNfcAdapter != null) +// mNfcAdapter.disableReaderMode(this); +// } /** * 妫�娴嬪伐浣�,鍒ゆ柇璁惧鐨凬FC鏀寔鎯呭喌 * * @return */ - protected Boolean ifNFCUse(Context context) { + protected Boolean ifNFCUse(Activity context) { if (mNfcAdapter == null) { - ToastUtil.show(context, "璁惧涓嶆敮鎸丯FC锛�"); + TipUtil.show(context, "璁惧涓嶆敮鎸丯FC锛�"); return false; } if (mNfcAdapter != null && !mNfcAdapter.isEnabled()) { - ToastUtil.show(context, "璇峰湪绯荤粺璁剧疆涓厛鍚敤NFC鍔熻兘锛�"); + startActivity(new Intent(Settings.ACTION_NFC_SETTINGS)); + ToastUtil.showLong( "璇峰湪绯荤粺璁剧疆涓厛鍚敤NFC鍔熻兘锛�"); return false; } return true; } + + + @Override + public void onAccountReceived(Tag tag) { + + Intent intent = new Intent(this, getClass()); + intent.putExtra(NfcAdapter.EXTRA_TAG, tag); + startActivity(intent); + + } } -- Gitblit v1.8.0