From 8d72ec1b07a4fe0863b41b1140a8c0e679867b93 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期四, 03 四月 2025 17:44:29 +0800 Subject: [PATCH] save --- app/src/main/java/com/sinata/xqmuse/ui/mine/SettingActivity.kt | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 111 insertions(+), 9 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 ea0ce9a..2179fee 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,35 +1,137 @@ package com.sinata.xqmuse.ui.mine +import android.content.Context +import cn.sinata.xldutils.gone +import cn.sinata.xldutils.utils.SPUtils +import cn.sinata.xldutils.utils.SpanBuilder +import cn.sinata.xldutils.visible +import com.sinata.xqmuse.MainActivity import com.sinata.xqmuse.R +import com.sinata.xqmuse.dialog.LoginRuleDialog +import com.sinata.xqmuse.dialog.TipDialog import com.sinata.xqmuse.network.HttpManager +import com.sinata.xqmuse.network.entity.MineInfo import com.sinata.xqmuse.network.request import com.sinata.xqmuse.ui.H5Activity import com.sinata.xqmuse.ui.TransparentStatusBarActivity +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.* +import org.greenrobot.eventbus.EventBus +import org.jetbrains.anko.browse +import org.jetbrains.anko.bundleOf import org.jetbrains.anko.startActivity -import org.jetbrains.anko.startActivityForResult +import org.jetbrains.anko.toast class SettingActivity : TransparentStatusBarActivity() { override fun setContentView() = R.layout.activity_setting + private var data : MineInfo? = null + private var isPush = true //个性推荐 override fun initClick() { - tv_phone.setOnClickListener { - startActivity<ChangePhoneActivity>() - } - tv_pwd.setOnClickListener { - startActivity<ChangePwdActivity>() - } + iv_back.setOnClickListener { finish() } tv_unregister.clickDelay { - HttpManager.getH5(3).request(this){ _, data-> + startActivity<UnregisterActivity>() + } + + tv_bind.setOnClickListener { + if (data!=null) + startActivity<BindActivity>() + } + + tv_clear.setOnClickListener { + CacheCleanUtil.clearAllCache(this@SettingActivity) + toast("清理成功") + } + + tv_logout.setOnClickListener { + SPUtils.instance().put(Const.User.TOKEN, "").apply() + EventBus.getDefault().post(EmptyEvent(Const.EventCode.CHANGE_USER)) + startActivity<MainActivity>() + startActivity<LoginActivity>() + } + + tv_switch.setOnClickListener { + startActivity<MainActivity>() + startActivity<LoginActivity>() + } + + iv_push.setOnClickListener { + isPush = !isPush + iv_push.setImageResource(if (isPush) R.mipmap.sw_on else R.mipmap.sw_off) + SPUtils.instance().put(Const.IS_PUSH,isPush).apply() + } + + tv_rule.setOnClickListener { + startActivity<RulesActivity>() + } + + tv_about.setOnClickListener { + HttpManager.getH5(LoginRuleDialog.TYPE_ABOUT).request(this){ _, data-> data?.let { - startActivityForResult<H5Activity>(1,"title" to "注销账号","url" to it) + 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,data.remark,object :TipDialog.OnClickCallback{ + override fun onOk() { +// DownloadUtil(this@SettingActivity).downloadAPK(data.androidFile, "泉疗愈") +// toast("后台开始下载,请等待") + browse(data.androidFile) + } + + override fun onCancel() { + } + },"立即更新","下次再说",false,"有新版本啦!") } } } override fun initView() { + titleBar.gone() + data = intent.getParcelableExtra("data") + tv_update.text = SpanBuilder("版本更新 当前版本:"+getAppVersion(this)).size(0,4,14).build() + isPush = SPUtils.instance().getBoolean(Const.IS_PUSH,true) + iv_push.setImageResource(if (isPush) R.mipmap.sw_on else R.mipmap.sw_off) + checkVirsion() } + private fun checkVirsion() { + HttpManager.detailVersion().request(this){_,data-> + if (data?.versionNo.isNullOrEmpty()||data!!.versionNo <= getAppVersion(this@SettingActivity)?:"") + else + tv_new.visible() + } + } + + + /** + * 获取版本号 + * @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