From f5180b600511d1871635bd364beb5bdd15f6ae88 Mon Sep 17 00:00:00 2001 From: zuojincheng <lf_zuo@163.com> Date: 星期三, 26 三月 2025 18:05:07 +0800 Subject: [PATCH] feat(nfc): 优化 NFC写卡功能并添加新方法- 在 BaseNfcWriteHelper 中添加了新的 writeData 方法,增加了 isConnect 参数 - 优化了 NativeNfcWriteHelper 中的 writeData 实现,支持选择性连接 NFC - 更新了 NfcWriteAdapter,支持新的 writeData 方法- 修改了 NfcWreatHelper 中的 writeData 方法,使用新的接口 - 优化了 NfcWreatActivity 中的写卡逻辑 --- generallibrary/src/main/java/com/dayu/general/activity/MainActivity.kt | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 56 insertions(+), 0 deletions(-) diff --git a/generallibrary/src/main/java/com/dayu/general/activity/MainActivity.kt b/generallibrary/src/main/java/com/dayu/general/activity/MainActivity.kt index 0f8a324..6d9dc1c 100644 --- a/generallibrary/src/main/java/com/dayu/general/activity/MainActivity.kt +++ b/generallibrary/src/main/java/com/dayu/general/activity/MainActivity.kt @@ -1,17 +1,27 @@ package com.dayu.general.activity import android.os.Bundle +import android.view.KeyEvent import android.view.LayoutInflater +import android.widget.Toast import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment +import com.dayu.baselibrary.net.subscribers.SubscriberListener +import com.dayu.baselibrary.utils.ToastUtil +import com.dayu.general.BaseApplication import com.dayu.general.R import com.dayu.general.adapter.TabAdapter +import com.dayu.general.bean.net.UserInfoResult import com.dayu.general.databinding.ActivityMainBinding +import com.dayu.general.net.ApiManager +import com.dayu.general.net.BaseResponse class MainActivity : BaseActivity() { var binding: ActivityMainBinding? = null private val fragments: ArrayList<Fragment> = ArrayList() + var mExitTime: Long = 0 + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(LayoutInflater.from(this)) @@ -19,8 +29,35 @@ setupFragments() initView() initTab() + getUserInfo() + } + private fun getUserInfo() { + // 浣跨敤姝g‘鐨勭被鍨嬪弬鏁� + ApiManager.getInstance().requestGetLoading( + this, + "base/user/getUserInfos/" + BaseApplication.userId, + UserInfoResult::class.java, + null, + object : SubscriberListener<BaseResponse<UserInfoResult>>() { + override fun onNext(t: BaseResponse<UserInfoResult>) { + if (t.success) { + BaseApplication.userName = t.content?.userName ?: "" + BaseApplication.userPhone = t.content?.phone ?: "" + BaseApplication.blockName = t.content?.blockName ?: "" + } else { + // 澶勭悊鎼滅储澶辫触鐨勬儏鍐� + ToastUtil.show(t.msg) + } + } + + override fun onError(e: Throwable?) { + super.onError(e) + ToastUtil.show("鎼滅储澶辫触: ${e?.message ?: "鏈煡閿欒"}") + } + } + ) } @@ -115,4 +152,23 @@ } } } + + + + //鐐瑰嚮涓ゆ閫�鍑虹▼搴� 鏈夋椂闂撮棿闅� 闂撮殧鍐呯偣鍑诲垯閫�鍑虹▼搴� 鍚﹀垯 鍒欐彁绀� + override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean { + if (keyCode == KeyEvent.KEYCODE_BACK) { + if ((System.currentTimeMillis() - mExitTime) > 2000) { + Toast.makeText(this@MainActivity, "鍐嶆寜涓�娆¢��鍑虹▼搴�", Toast.LENGTH_SHORT) + .show() + mExitTime = System.currentTimeMillis() + } else { + this@MainActivity.finish() + } + return true + } + return super.onKeyDown(keyCode, event) + } + + } \ No newline at end of file -- Gitblit v1.8.0