From b13afc751dbbce24753d008f1f87d2c5e133a4ad Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期二, 09 七月 2024 15:19:26 +0800 Subject: [PATCH] fix bug --- app/src/main/java/com/dollearn/student/MainActivity.kt | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/dollearn/student/MainActivity.kt b/app/src/main/java/com/dollearn/student/MainActivity.kt index 2f671f4..df759cc 100644 --- a/app/src/main/java/com/dollearn/student/MainActivity.kt +++ b/app/src/main/java/com/dollearn/student/MainActivity.kt @@ -1,14 +1,17 @@ package com.dollearn.student import android.annotation.SuppressLint +import android.os.Handler +import android.os.Looper +import android.os.Message +import android.util.Log import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter import cn.sinata.xldutils.gone -import cn.sinata.xldutils.utils.showAllowingStateLoss +import cn.sinata.xldutils.utils.SPUtils import com.flyco.tablayout.listener.CustomTabEntity import com.flyco.tablayout.listener.OnTabSelectListener import com.github.zackratos.ultimatebar.UltimateBar -import com.dollearn.student.dialog.CompetitionTipDialog import com.dollearn.student.network.HttpManager import com.dollearn.student.network.entity.UserBean import com.dollearn.student.network.request @@ -29,6 +32,7 @@ private val fragments = arrayListOf<Fragment>() var homeData: UserBean? = null //个人信息 var score = 0 + private var handler: Handler? = null override fun initClick() { } @@ -42,6 +46,50 @@ initTab() EventBus.getDefault().register(this) getData() + getVoiceUrl() + getScoreConfig() + } + + private fun getScoreConfig() { + HttpManager.onlineDuration().request(this,false,{_,data-> + SPUtils.instance().put(Const.SCORE_DURATION,(data?:"0").toInt()).apply() + startTimer() + }){_,_-> + startTimer() + } + } + + private fun startTimer() { + val duration = SPUtils.instance().getInt(Const.SCORE_DURATION,30)//单位分钟 + var mins = 0 + handler = object :Handler(Looper.myLooper()!!){ + override fun handleMessage(msg: Message) { + super.handleMessage(msg) + if (msg.what == 0){ + mins++ + Log.e("mmp","当前已在线${mins}分钟") + if (mins > duration){ + HttpManager.giveIntegral().request(this@MainActivity,false,{_,_-> + mins = 0 + handler?.sendEmptyMessageDelayed(0,1000*60) + }){_,_-> + handler?.sendEmptyMessageDelayed(0,1000*60) + } + }else + handler?.sendEmptyMessageDelayed(0,1000*60) + } + } + } + handler?.sendEmptyMessageDelayed(0,1000*60) + } + + private fun getVoiceUrl() { + HttpManager.promptVoice().request(this,false){_,data-> + if (!data?.correct.isNullOrEmpty()) + SPUtils.instance().put(Const.RV,data?.correct?:"").apply() + if (!data?.error.isNullOrEmpty()) + SPUtils.instance().put(Const.EV,data?.error?:"").apply() + } } private fun initTab() { @@ -97,7 +145,7 @@ @Subscribe fun onSwitch(e:EmptyEvent){ - if (e.code == Const.EventCode.SWITCH_HOME){ + if (e.code == Const.EventCode.CLICK_GAME_ITEM){ switchHome() }else if(e.code == Const.EventCode.CHANGE_WELFARE){ tab_bar.currentTab = 2 @@ -145,6 +193,7 @@ override fun onDestroy() { super.onDestroy() EventBus.getDefault().unregister(this) - WeparkApplication.storeId = "" + handler?.removeCallbacksAndMessages(null) + handler = null } } \ No newline at end of file -- Gitblit v1.7.1