From bd6a8872438a35d47821c5d5da7fe149e5fed3ab Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期三, 21 六月 2023 09:53:36 +0800 Subject: [PATCH] 处理收不到广播 --- app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt | 57 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 36 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt b/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt index b699c3a..54057fb 100644 --- a/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt +++ b/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt @@ -5,6 +5,7 @@ import android.content.Intent import android.os.Handler import android.os.Looper +import android.util.Log import cn.sinata.rxnetty.netStatus.NetUtils import cn.sinata.xldutils.utils.toast import com.google.gson.Gson @@ -23,50 +24,64 @@ class MainBroadCastReceiver : BroadcastReceiver() { override fun onReceive(contexts: Context?, intent: Intent?) { - if (intent == null){ + MyApplication.upLog("收到广播,Action:${intent?.action}") + Log.e("MoneyBroadCastReceiver","收到广播,Action:${intent?.action}") + if (intent == null) { toast("内容获取为空,广播接收消息错误") return } try { Handler(Looper.getMainLooper()).post { - val b = intent.getBooleanExtra("isLogin",true) - toast("isLogin=$b") - if (!b){ + val b = intent.getBooleanExtra("isLogin", true) + if (!b) { + loginOut(contexts) CacheUtil.get().clear() EventBus.getDefault().post(BaseEvent(BaseEvent.OUT_APP)) - }else{ - if (getToken().isNullOrEmpty()){ + } else { + if (getToken().isNullOrEmpty()) { Handler(Looper.getMainLooper()).post { - toast("开始登录") +// toast("开始登录") } var driverCertificate = intent.getStringExtra("driverCertificate") - if (driverCertificate == null){ - toast("身份证获取失败") - }else{ - if (contexts == null){ - toast("上下文为空,使用全局跳转") - toLoginActivity(MyApplication.getInstance(),driverCertificate) - }else{ - toLoginActivity(MyApplication.getInstance(),driverCertificate) + if (driverCertificate == null) { +// toast("身份证获取失败") + } else { + MyApplication.upLog("广播参数:driverCertificate:${driverCertificate},开始登录") + if (contexts == null) { +// toast("上下文为空,使用全局跳转") + toLoginActivity(MyApplication.getInstance(), driverCertificate) + } else { + toLoginActivity(MyApplication.getInstance(), driverCertificate) } } } } } - }catch (e:Exception){ + } catch (e: Exception) { } } - private fun toLoginActivity(context: Context?,driverCertificate: String?) { + private fun loginOut(context: Context?) { var map = getMapByAny() - map["identification"] = driverCertificate - callNet(context!!,Api.loginByIdentification,map){ + callNet(context!!, Api.loginOut, map) { + toast("Ok退签") + } + } + + private fun toLoginActivity(context: Context?, driverCertificate: String?) { + var map = getMapByAny() + if (driverCertificate.isNullOrEmpty()){ + toast("资格证号:空") + return + } + map["taxiAptitudeCard"] = driverCertificate + callNet(context!!, Api.loginByTaxiAptitudeCard, map) { toast("登录成功") var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java) - CacheKey.putKeyStr("identification",driverCertificate!!) + CacheKey.putKeyStr("identification", driverCertificate) CacheKey.putKeyStr("appid", bean.data.appid) CacheKey.putKeyStr("token", bean.data.token) CacheKey.putKeyStr("userId", bean.data.id.toString()) @@ -74,7 +89,7 @@ CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString()) Handler(Looper.getMainLooper()).post { var intent = Intent() - intent.setClass(context,SlabMainActivity::class.java) + intent.setClass(context, SlabMainActivity::class.java) intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK context.startActivity(intent) } -- Gitblit v1.7.1