package com.fuban.driver.ui.pub
|
|
import android.annotation.SuppressLint
|
import android.os.Bundle
|
import android.os.CountDownTimer
|
import android.view.View
|
import android.webkit.WebSettings
|
import android.webkit.WebView
|
import androidx.core.app.ActivityCompat
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.textColor
|
import com.fuban.driver.R
|
import com.fuban.driver.base.*
|
import com.fuban.driver.bean.AgreeBean
|
import com.fuban.driver.netUtls.Api
|
import com.fuban.driver.netUtls.callNet
|
import com.fuban.driver.netUtls.getMapByAny
|
import com.fuban.driver.netUtls.getToken
|
import com.fuban.driver.ui.DialogUtil
|
import com.fuban.driver.ui.main.MainActivity
|
import com.fuban.driver.utils.Cache.CacheKey
|
import kotlinx.android.synthetic.main.item_ys.view.*
|
import org.greenrobot.eventbus.EventBus
|
import org.jetbrains.anko.startActivity
|
|
class StartActivity : MyBaseActivity() {
|
override fun setContentView() {
|
setContentView(R.layout.activity_start)
|
}
|
|
override fun initView() {
|
showHeader(false)
|
showTitle(false)
|
}
|
|
@SuppressLint("SourceLockedOrientationActivity")
|
override fun onCreate(savedInstanceState: Bundle?) {
|
super.onCreate(savedInstanceState)
|
showYsDialog()
|
// setRxpermiss()
|
}
|
|
|
private fun callLast() {
|
MyApplication.getInstance()?.initSdk()
|
object :CountDownTimer(2000,1000){
|
override fun onTick(millisUntilFinished: Long) {
|
}
|
|
override fun onFinish() {
|
if (getToken().isNullOrEmpty()){
|
startActivity<LoginActivity>()
|
}else{
|
startActivity<MainActivity>()
|
}
|
}
|
}.start()
|
}
|
|
@SuppressLint("CheckResult")
|
private fun setRxpermiss() {
|
ActivityCompat.requestPermissions(this, Const.PERMISSIONS_LIST, 101);
|
}
|
|
override fun onRequestPermissionsResult(
|
requestCode: Int,
|
permissions: Array<out String>,
|
grantResults: IntArray
|
) {
|
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
|
if (requestCode == 101) {
|
var b = grantResults.size == Const.PERMISSIONS_LIST.size
|
if (b) {
|
callLast()
|
} else {
|
callLast()
|
}
|
}
|
}
|
|
override fun setOnclick() {
|
}
|
|
|
fun showYsDialog() {
|
var isAgreen = CacheKey.getKeyStr("isAgreen")
|
if (isAgreen.isEmpty()) {
|
var dialog = DialogUtil.getDialog(this, R.layout.item_ys)
|
var view = DialogUtil.getView(dialog)
|
callys {
|
setWebview(view.wv_content,it)
|
}
|
view.tv_none.setOnClickListener {
|
dialog.dismiss()
|
}
|
view.tv_agreet.clickDelay {
|
CacheKey.putKeyStr("isAgreen", "1")
|
dialog.dismiss()
|
callLast()
|
}
|
view.tv_yx.clickDelay {
|
view.tv_yx.textColor(this, R.color.white)
|
view.tv_yh.textColor(this, R.color.main_yellow_qia)
|
view.tv_yx.setBackgroundResource(R.drawable.bg_login_top_left)
|
view.tv_yh.setBackgroundResource(R.drawable.bg_logion_top_right)
|
callys {
|
setWebview(view.wv_content,it)
|
}
|
}
|
view.tv_yh.clickDelay {
|
view.tv_yx.textColor(this, R.color.main_yellow_qia)
|
view.tv_yh.textColor(this, R.color.white)
|
view.tv_yx.setBackgroundResource(R.drawable.bg_logion_top_left)
|
view.tv_yh.setBackgroundResource(R.drawable.bg_login_top_left_select)
|
callyh {
|
setWebview(view.wv_content,it)
|
}
|
}
|
dialog.setOnDismissListener {
|
if (CacheKey.getKeyStr("isAgreen").isEmpty())
|
finish()
|
}
|
}else
|
callLast()
|
}
|
|
fun callys(ok: (s: String) -> Unit) {
|
var map = getMapByAny()
|
map["type"] = 1
|
callNet(Api.queryByType, map) {
|
var data = gson.fromJson<AgreeBean>(it, AgreeBean::class.java)
|
ok(data.data.content)
|
}
|
}
|
|
fun callyh(ok: (s: String) -> Unit) {
|
var map = getMapByAny()
|
map["type"] = 2
|
callNet(Api.queryByType, map) {
|
var data = gson.fromJson<AgreeBean>(it, AgreeBean::class.java)
|
ok(data.data.content)
|
}
|
}
|
|
private fun setWebview(webView: WebView, url: String) {
|
val settings = webView.settings
|
settings.cacheMode = WebSettings.LOAD_CACHE_ELSE_NETWORK
|
settings.defaultTextEncodingName = "utf-8" //设置编码格式
|
settings.useWideViewPort = true //设置此属性,可任意比例缩放
|
settings.loadWithOverviewMode = true // 页面支持缩放:
|
settings.builtInZoomControls = true
|
settings.useWideViewPort = false //将图片调整到适合webview的大小
|
settings.setSupportZoom(false) //支持缩放
|
settings.supportMultipleWindows() //多窗口
|
settings.cacheMode = WebSettings.LOAD_CACHE_ELSE_NETWORK //关闭webview中缓存
|
settings.allowFileAccess = true //设置可以访问文件
|
settings.setNeedInitialFocus(true) //当webview调用requestFocus时为webview设置节点
|
settings.javaScriptCanOpenWindowsAutomatically = true //支持通过JS打开新窗口
|
settings.loadsImagesAutomatically = true //支持自动加载图片
|
settings.javaScriptEnabled = true
|
settings.domStorageEnabled = true
|
webView.isScrollContainer = false
|
webView.isScrollbarFadingEnabled = false
|
webView.scrollBarStyle = View.SCROLLBARS_OUTSIDE_OVERLAY
|
webView.addJavascriptInterface(InnerJsInterface(), "HTMLOUT")
|
if (url!!.startsWith("http")) {
|
webView.loadUrl(url)
|
} else {
|
val sHead =
|
"<html><head><meta name=\"viewport\" content=\"width=device-width, " + "initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes\" />" + "<style>img{max-width:100% !important;height:auto !important;}</style>" + "<style>body{max-width:100% !important;}</style>" + "</head><body>"
|
webView.loadDataWithBaseURL(null, sHead + url, "text/html", "utf-8", null)
|
}
|
}
|
|
}
|