lmw
2023-06-21 bd6a8872438a35d47821c5d5da7fe149e5fed3ab
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,49 +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)
                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())
@@ -73,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)
            }