package com.fuban.user.ui.mine
|
|
import android.app.Activity
|
import android.content.Intent
|
import android.net.Uri
|
import androidx.core.os.bundleOf
|
import cn.sinata.xldutils.utils.CacheCleanUtil
|
import cn.sinata.xldutils.utils.SPUtils
|
import cn.sinata.xldutils.utils.myToast
|
import cn.sinata.xldutils.utils.optString
|
import com.fuban.user.BuildConfig
|
import com.fuban.user.R
|
import com.fuban.user.network.HttpManager
|
import com.fuban.user.network.request
|
import com.fuban.user.ui.H5Activity
|
import com.fuban.user.ui.TransparentStatusBarActivity
|
import com.fuban.user.dialog.TipDialog
|
import com.fuban.user.utils.Const
|
import kotlinx.android.synthetic.main.activity_setting.*
|
import org.jetbrains.anko.startActivity
|
import org.jetbrains.anko.startActivityForResult
|
|
class SettingActivity : TransparentStatusBarActivity() {
|
override fun setContentView() = R.layout.activity_setting
|
|
private lateinit var phone:String
|
|
override fun initClick() {
|
tv_account.setOnClickListener {
|
startActivityForResult<AccountSafeActivity>(1,"phone" to phone)
|
}
|
tv_guide.setOnClickListener {
|
HttpManager.getH5(3).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "用户指南")
|
}
|
}
|
tv_rule.setOnClickListener {
|
HttpManager.getH5(4).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "法律条款与平台规范")
|
}
|
}
|
tv_recharge.setOnClickListener {
|
HttpManager.getH5(8).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "充值领券规则")
|
}
|
}
|
tv_cancel.setOnClickListener {
|
HttpManager.getH5(7).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "取消订单规则")
|
}
|
}
|
tv_price.setOnClickListener {
|
HttpManager.getH5(13).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "计价规则")
|
}
|
}
|
tv_question.setOnClickListener {
|
HttpManager.getH5(12).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "常见问题")
|
}
|
}
|
tv_privacy.setOnClickListener {
|
HttpManager.getH5(1).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "隐私协议")
|
}
|
}
|
tv_user_rule.setOnClickListener {
|
HttpManager.getH5(2).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "用户协议")
|
}
|
}
|
tv_about.setOnClickListener {
|
HttpManager.getH5(5).request(this){ _, data->
|
val url = data?.optString("content")?:""
|
startActivity<H5Activity>("url" to url,"title" to "关于我们")
|
}
|
}
|
tv_action.setOnClickListener {
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to "是否确认退出登录?")
|
tipDialog.setCallback(object :TipDialog.OnClickCallback{
|
override fun onOk() {
|
SPUtils.instance().remove(Const.User.TOKEN).remove(Const.User.USER_ID).remove(Const.User.NO_PHONE).apply()
|
setResult(Activity.RESULT_OK)
|
finish()
|
}
|
|
override fun onCancel() {
|
}
|
})
|
tipDialog.show(supportFragmentManager,"out")
|
}
|
|
tv_cache.setOnClickListener {
|
val tipDialog = TipDialog()
|
tipDialog.arguments = org.jetbrains.anko.bundleOf("msg" to "是否清除应用缓存?")
|
tipDialog.setCallback(object : TipDialog.OnClickCallback {
|
override fun onOk() {
|
CacheCleanUtil.clearAllCache(this@SettingActivity)
|
tv_cache_size.text = "0.00K"
|
}
|
|
override fun onCancel() {
|
}
|
})
|
tipDialog.show(supportFragmentManager, "tip")
|
}
|
|
tv_update.setOnClickListener {
|
showDialog("检测新版本...")
|
checkVersion(true)
|
}
|
}
|
|
override fun initView() {
|
title = "设置"
|
phone = intent.getStringExtra("phone")
|
tv_cache_size.text = CacheCleanUtil.getTotalCacheSize(this)
|
tv_current.text = "V${BuildConfig.VERSION_NAME}"
|
}
|
|
private fun checkVersion(update:Boolean){
|
HttpManager.queryNewData().request(this){_,it->
|
dismissDialog()
|
it?.run {
|
if (version > BuildConfig.VERSION_NAME) {
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to "有新版本可用,是否立即更新?")
|
tipDialog.setCallback(object :TipDialog.OnClickCallback{
|
override fun onOk() {
|
val intent = Intent()
|
intent.action = "android.intent.action.VIEW"
|
intent.data = Uri.parse(url)
|
startActivity(intent)
|
}
|
|
override fun onCancel() {
|
}
|
})
|
tipDialog.show(supportFragmentManager,"update")
|
} else
|
myToast("当前已经是最新版本了")
|
}
|
}
|
}
|
|
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
|
super.onActivityResult(requestCode, resultCode, data)
|
if (resultCode == Activity.RESULT_OK){
|
SPUtils.instance().remove(Const.User.TOKEN).remove(Const.User.USER_ID).remove(Const.User.NO_PHONE).apply()
|
val intent = Intent()
|
intent.putExtra("toLogin",true)
|
setResult(Activity.RESULT_OK, intent)
|
finish()
|
}
|
}
|
}
|