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