From 7546fdfd53006a7397aad422581a5864c695b8ef Mon Sep 17 00:00:00 2001 From: shenzuqiang Date: Wed, 11 Mar 2026 17:56:33 +0800 Subject: [PATCH] =?UTF-8?q?Dev=EF=BC=9A=201=E3=80=81=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E9=83=A8=E5=88=86=E6=80=A7=E8=83=BD=E9=97=AE=E9=A2=98=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/img/rabbit/MainActivity.kt | 27 ++++++++++--------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/img/rabbit/MainActivity.kt b/app/src/main/java/com/img/rabbit/MainActivity.kt index 0a1cc45..0c3d4c6 100644 --- a/app/src/main/java/com/img/rabbit/MainActivity.kt +++ b/app/src/main/java/com/img/rabbit/MainActivity.kt @@ -113,14 +113,15 @@ class MainActivity : ComponentActivity(), LoadingCallback { val reportViewModel:ReportViewModel = viewModel() generalViewModel = ViewModelProvider(this, ViewModelProvider.AndroidViewModelFactory.getInstance(application))[GeneralViewModel::class.java] - val updateAppNotify by GlobalStateManager(context).globalUpdateNotifyFlow().collectAsState(initial = false) - val updateUniDownloadNotify by GlobalStateManager(context).globalUniDownloadNotifyFlow().collectAsState(initial = false) - val updateUserConfigNotify by GlobalStateManager(context).globalUserConfigNotifyFlow().collectAsState(initial = false) - val updateUniUpdateNotify by GlobalStateManager(context).globalUniUpdateNotifyFlow().collectAsState(initial = false) - val updateGlobalLoadingNotify by GlobalStateManager(context).isGlobalLoadingFlow().collectAsState(initial = false) + val globalStateManager = remember { GlobalStateManager(context) } + val updateAppNotify by globalStateManager.globalUpdateNotifyFlow().collectAsState(initial = false) + val updateUniDownloadNotify by globalStateManager.globalUniDownloadNotifyFlow().collectAsState(initial = false) + val updateUserConfigNotify by globalStateManager.globalUserConfigNotifyFlow().collectAsState(initial = false) + val updateUniUpdateNotify by globalStateManager.globalUniUpdateNotifyFlow().collectAsState(initial = false) + val updateGlobalLoadingNotify by globalStateManager.isGlobalLoadingFlow().collectAsState(initial = false) //重置状态信息(防止异常退出导致状态失效) LaunchedEffect(Unit) { - GlobalStateManager(context).apply { + globalStateManager.apply { storeGlobalUpdateNotify(false) storeGlobalUniDownloadNotify(false) storeGlobalUserConfigNotify(false) @@ -179,13 +180,13 @@ class MainActivity : ComponentActivity(), LoadingCallback { delay(300) if(updateUserConfigNotify == true){ coroutineScope.launch { - GlobalStateManager(context).storeGlobalUserConfigNotify(false) + globalStateManager.storeGlobalUserConfigNotify(false) } } } //提示下载小程序资源(在跳转指定页面时,未下载资源需要提示) - val progressWGTToPageState = mutableFloatStateOf(0f) + val progressWGTToPageState = remember { mutableFloatStateOf(0f) } LaunchedEffect(updateUniDownloadNotify) { if(updateUniDownloadNotify == true) { UniAppUtils.currentDownloadUniMp?.let{ @@ -205,7 +206,7 @@ class MainActivity : ComponentActivity(), LoadingCallback { progressWGTToPageState.floatValue = 1f Log.i("HomeScreen", "DOWNLOAD_FINISH") coroutineScope.launch { - GlobalStateManager(context).storeGlobalUniDownloadNotify( + globalStateManager.storeGlobalUniDownloadNotify( false ) } @@ -216,7 +217,7 @@ class MainActivity : ComponentActivity(), LoadingCallback { progressWGTToPageState.floatValue = -1f Log.i("HomeScreen", "DOWNLOAD_FAIL") coroutineScope.launch { - GlobalStateManager(context).storeGlobalUniDownloadNotify( + globalStateManager.storeGlobalUniDownloadNotify( false ) } @@ -331,7 +332,7 @@ class MainActivity : ComponentActivity(), LoadingCallback { if(!isUpdateFinish && !isCancel && data != null){ isDownloadingWGT.value = true }else{ - coroutineScope.launch { GlobalStateManager(context).storeGlobalUniUpdateNotify(false) } + coroutineScope.launch { globalStateManager.storeGlobalUniUpdateNotify(false) } } } ) @@ -354,7 +355,7 @@ class MainActivity : ComponentActivity(), LoadingCallback { ){ state, isCancel, url -> if(isCancel) { coroutineScope.launch { - GlobalStateManager(context).storeGlobalUpdateNotify(state) + globalStateManager.storeGlobalUpdateNotify(state) } } if(!isCancel){ @@ -374,7 +375,7 @@ class MainActivity : ComponentActivity(), LoadingCallback { } if(PreferenceUtil.getUserConfig()?.config?.versionEntity?.force == false) { coroutineScope.launch { - GlobalStateManager(context).storeGlobalUpdateNotify( + globalStateManager.storeGlobalUpdateNotify( state ) }