From d1a9e3312387b6c47e6186af506787a8a66369d1 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期六, 09 十一月 2024 18:40:36 +0800 Subject: [PATCH] fix --- app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt | 62 ++++++++++++++++++++++-------- 1 files changed, 45 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt index ee08c6c..30ccab7 100644 --- a/app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt +++ b/app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt @@ -1,5 +1,6 @@ package com.sinata.xqmuse.ui.mine +import android.content.Context import cn.sinata.xldutils.gone import cn.sinata.xldutils.utils.SPUtils import com.sinata.xqmuse.MainActivity @@ -14,6 +15,7 @@ import com.sinata.xqmuse.ui.login.LoginActivity import com.sinata.xqmuse.utils.CacheCleanUtil import com.sinata.xqmuse.utils.Const +import com.sinata.xqmuse.utils.download.DownloadUtil import com.sinata.xqmuse.utils.event.EmptyEvent import com.sinata.xqmuse.utils.extention.clickDelay import kotlinx.android.synthetic.main.activity_setting.* @@ -38,29 +40,18 @@ } tv_clear.setOnClickListener { - val tipDialog = TipDialog() - tipDialog.arguments = bundleOf("msg" to "是否清除应用缓存?") - tipDialog.setCallback(object : TipDialog.OnClickCallback { - override fun onOk() { - CacheCleanUtil.clearAllCache(this@SettingActivity) - toast("清理成功") - } - - override fun onCancel() { - } - }) - tipDialog.show(supportFragmentManager, "tip") + CacheCleanUtil.clearAllCache(this@SettingActivity) + toast("清理成功") } tv_logout.setOnClickListener { - SPUtils.instance().put(Const.User.TOKEN,"").apply() - EventBus.getDefault().post(EmptyEvent(Const.EventCode.SWITCH_HOME)) + SPUtils.instance().put(Const.User.TOKEN, "").apply() + EventBus.getDefault().post(EmptyEvent(Const.EventCode.CHANGE_USER)) startActivity<MainActivity>() + startActivity<LoginActivity>() } tv_switch.setOnClickListener { - SPUtils.instance().put(Const.User.TOKEN,"").apply() - EventBus.getDefault().post(EmptyEvent(Const.EventCode.SWITCH_HOME)) startActivity<MainActivity>() startActivity<LoginActivity>() } @@ -72,16 +63,53 @@ tv_about.setOnClickListener { HttpManager.getH5(LoginRuleDialog.TYPE_ABOUT).request(this){ _, data-> data?.let { - startActivity<H5Activity>("title" to "关于心泉","url" to it.content,"showClose" to false) + startActivity<H5Activity>( + "title" to "关于心泉", + "url" to it.content, + "showClose" to false + ) } } } + tv_update.clickDelay { + showDialog() + HttpManager.detailVersion().request(this){_,data-> + if (data?.versionNo.isNullOrEmpty()||data!!.versionNo > getAppVersion(this@SettingActivity)?:"") + toast("已经是最新版本") + else + TipDialog.show(supportFragmentManager,"当前有新版本,是否更新?",object :TipDialog.OnClickCallback{ + override fun onOk() { + DownloadUtil(this@SettingActivity).downloadAPK(data.androidFile, "泉疗愈") + toast("后台开始下载,请等待") + } + + override fun onCancel() { + } + }) + } + } } override fun initView() { titleBar.gone() data = intent.getParcelableExtra("data") + tv_version.text = "当前版本:"+getAppVersion(this) } + + /** + * 获取版本号 + * @return 当前应用的版本号 + */ + private fun getAppVersion(context: Context): String? { + return try { + val manager = context.packageManager + val info = manager.getPackageInfo(context.packageName, 0) + info.versionName + } catch (e: Exception) { + e.printStackTrace() + "null" + } + } } -- Gitblit v1.7.1