fix 启动act自动切换

This commit is contained in:
cyh 2025-07-10 15:06:42 +08:00
parent 1c5e0f0aec
commit f762b1a1c7
1 changed files with 43 additions and 48 deletions

View File

@ -2,7 +2,7 @@ package com.yingmao.clash.act
import android.Manifest
import android.annotation.SuppressLint
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.Bitmap
@ -11,10 +11,7 @@ import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.provider.Settings
import android.text.SpannableString
import android.text.TextPaint
import android.text.TextUtils
import android.text.style.ClickableSpan
import android.util.Log
import android.view.View
import android.view.WindowManager
@ -71,9 +68,7 @@ import com.yingmao.clash.view.dialog.DialogAppVersion
import com.yingmao.clash.view.dialog.DialogDoMainChoose
import com.yingmao.clash.view.dialog.RxDialogSureCancel
import com.yingmao.clash.vm.SplashAtyVM
import kotlinx.coroutines.DelicateCoroutinesApi
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.MainScope
import kotlinx.coroutines.async
import kotlinx.coroutines.delay
@ -981,54 +976,54 @@ class SplashActivity : BaseActivity() {
com.cncat.vpn.common.log.Log.d("httpFailure HttpReqType.CHECK_LOGIN")
try {
RxToast.error("检测到网络异常,请尝试切换其他地址.")
SplashHelper(splashAtyVM).getHostWithFallback { success ->
MainScope().launch {
if (success) {
if (dialogDoMainChoose == null) {
dialogDoMainChoose = DialogDoMainChoose(this@SplashActivity)
}
if (dialogDoMainChoose?.isShowing == false) {
dialogDoMainChoose?.setOnTryButtonListener(object :
DialogDoMainChoose.OnTryButtonListener {
override fun tryButton() {
var currentHost = MMKV.defaultMMKV()
.decodeString(
BZYConstants.MMKV_KEY_CURRENT_HOST,
""
)
// com.cncat.vpn.common.log.Log.d("tryButton CHECK_LOGIN currentHost==>${currentHost}")
splashAtyVM.checkLogin()
}
override fun cancel() {
com.cncat.vpn.common.log.Log.d("tryButton CHECK_LOGIN cancel")
dialogDoMainChoose?.dismiss()
}
})
dialogDoMainChoose?.setOnListItemListener(object :
DialogDoMainChoose.OnListItemListener {
override fun listItemClick() {
splashAtyVM.checkLogin()
}
})
dialogDoMainChoose?.show()
}
}
}
}
// SplashHelper(splashAtyVM).getHostWithFallback { success ->
// MainScope().launch {
// if (success) {
// if (dialogDoMainChoose == null) {
// dialogDoMainChoose = DialogDoMainChoose(this@SplashActivity)
// }
// if (dialogDoMainChoose?.isShowing == false) {
// dialogDoMainChoose?.setOnTryButtonListener(object :
// DialogDoMainChoose.OnTryButtonListener {
// override fun tryButton() {
// var currentHost = MMKV.defaultMMKV()
// .decodeString(
// BZYConstants.MMKV_KEY_CURRENT_HOST,
// ""
// )
//// com.cncat.vpn.common.log.Log.d("tryButton CHECK_LOGIN currentHost==>${currentHost}")
// splashAtyVM.checkLogin()
// }
//
// override fun cancel() {
// com.cncat.vpn.common.log.Log.d("tryButton CHECK_LOGIN cancel")
// dialogDoMainChoose?.dismiss()
// }
// })
// dialogDoMainChoose?.setOnListItemListener(object :
// DialogDoMainChoose.OnListItemListener {
// override fun listItemClick() {
// splashAtyVM.checkLogin()
//
// }
//
// })
// dialogDoMainChoose?.show()
// }
// }
// }
// }
} catch (e: Exception) {
e.printStackTrace()
toLoginPage()
}
// if (super.switchServer()) {
// splashAtyVM.checkLogin()
// } else {
// toLoginPage()
// }
if (super.switchServer2()) {
splashAtyVM.checkLogin()
} else {
toLoginPage()
}
}
else -> {}