refactor(activity): 优化启动页网络检测逻辑,有网络时直接跳转并隐藏检测区域

This commit is contained in:
2026-04-13 18:17:17 +08:00
parent 96863e2078
commit 428852a07e
2 changed files with 16 additions and 15 deletions
@@ -2,7 +2,6 @@ package com.shuwei.dish.match.ui
import android.annotation.SuppressLint
import android.content.Intent
import android.util.Log
import android.graphics.Color
import android.os.Bundle
import android.os.SystemClock
@@ -24,7 +23,9 @@ import com.shuwei.dish.match.utils.NetworkUtils
import com.shuwei.dish.match.utils.SpTool
import com.shuwei.dish.match.utils.Weigher2
import com.shuwei.dish.match.utils.WeightUtil
import com.shuwei.dish.match.utils.ext.gone
import com.shuwei.dish.match.utils.ext.startActivity
import com.shuwei.dish.match.utils.ext.visible
import com.shuwei.dish.match.viewmodel.AppViewModel
import com.shuwei.dish.match.viewmodel.factory.AppFactory
import kotlinx.coroutines.delay
@@ -64,9 +65,6 @@ class InitActivity : BaseActivity() {
WeightUtil.startContinuousRead()
initViews()
val dpi = resources.displayMetrics.density
val metrics = resources.displayMetrics.toString()
Log.d(TAG, "dpi=$dpi, $metrics")
}
private fun initViewModel() {
@@ -75,9 +73,9 @@ class InitActivity : BaseActivity() {
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}
private fun startNextPage() {
private fun startNextPage(withDelay: Boolean = false) {
lifecycleScope.launch {
delay(2000)
if (withDelay) delay(2000)
// 子设备:直接进入小屏专属页面,不走原有大屏业务流程
if (GlobalData.deviceRole == DeviceRole.SLAVE) {
startActivity<SlaveActivity>()
@@ -136,9 +134,6 @@ class InitActivity : BaseActivity() {
binding.btnConnectNetwork.setOnClickListener {
openNetworkSettings()
}
// 启动加载动画 - 持续旋转
startLoadingAnimation()
}
/**
@@ -160,9 +155,12 @@ class InitActivity : BaseActivity() {
override fun onResume() {
super.onResume()
if (NetworkUtils.isNetworkConnected(this)) {
startNextPage()
// 有网络时隐藏网络检测区域,直接跳转
binding.llNetwork.gone()
startNextPage(withDelay = false)
return
}
binding.llNetwork.visible()
startCountdown()
}
@@ -179,9 +177,11 @@ class InitActivity : BaseActivity() {
startTime = SystemClock.elapsedRealtime()
lastNetworkCheckTime = 0
// binding.llNetwork.setBackgroundColor(Color.TRANSPARENT)
binding.llLoading.visibility = android.view.View.VISIBLE
binding.llNetworkButton.visibility = android.view.View.GONE
binding.llLoading.visible()
binding.llNetworkButton.gone()
binding.tvCountdown.text = "60秒"
// 无网络时才启动加载动画
startLoadingAnimation()
scheduleCountdown()
}
@@ -234,8 +234,8 @@ class InitActivity : BaseActivity() {
*/
private fun showNetworkButton() {
// binding.llNetwork.setBackgroundColor("#5C77F7".toColorInt())
binding.llLoading.visibility = android.view.View.GONE
binding.llNetworkButton.visibility = android.view.View.VISIBLE
binding.llLoading.gone()
binding.llNetworkButton.visible()
}
/**
+2 -1
View File
@@ -59,7 +59,8 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
android:gravity="center"
android:visibility="gone">
<!-- Loading 动画容器 -->
<LinearLayout