From b5517e3270810420e2b64586365e405a2fc1f871 Mon Sep 17 00:00:00 2001 From: pppscn <35696959@qq.com> Date: Thu, 14 Dec 2023 17:33:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=9A=E4=BB=85=E5=BD=93?= =?UTF-8?q?=E5=BC=80=E5=90=AF`=E5=90=AF=E5=8A=A8=E6=97=B6=E5=BC=82?= =?UTF-8?q?=E6=AD=A5=E8=8E=B7=E5=8F=96=E5=B7=B2=E5=AE=89=E8=A3=85App?= =?UTF-8?q?=E5=88=97=E8=A1=A8`=E6=80=BB=E5=BC=80=E5=85=B3=E6=97=B6?= =?UTF-8?q?=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sms/forwarder/fragment/SettingsFragment.kt | 15 ++++++--------- .../sms/forwarder/workers/LoadAppListWorker.kt | 8 +++++--- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/idormy/sms/forwarder/fragment/SettingsFragment.kt b/app/src/main/java/com/idormy/sms/forwarder/fragment/SettingsFragment.kt index fd104096..e8d06b7c 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/fragment/SettingsFragment.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/fragment/SettingsFragment.kt @@ -564,10 +564,11 @@ class SettingsFragment : BaseFragment(), View.OnClickL return@setOnCheckedChangeListener } SettingUtils.enableLoadAppList = isChecked - - XToastUtils.info(getString(R.string.loading_app_list)) - val request = OneTimeWorkRequestBuilder().build() - WorkManager.getInstance(XUtil.getContext()).enqueue(request) + if (isChecked) { + XToastUtils.info(getString(R.string.loading_app_list)) + val request = OneTimeWorkRequestBuilder().build() + WorkManager.getInstance(XUtil.getContext()).enqueue(request) + } } scbLoadUserApp.isChecked = SettingUtils.enableLoadUserAppList scbLoadUserApp.setOnCheckedChangeListener { _: SmoothCheckBox, isChecked: Boolean -> @@ -581,8 +582,6 @@ class SettingsFragment : BaseFragment(), View.OnClickL XToastUtils.info(getString(R.string.loading_app_list)) val request = OneTimeWorkRequestBuilder().build() WorkManager.getInstance(XUtil.getContext()).enqueue(request) - } else { - initAppSpinner() } } scbLoadSystemApp.isChecked = SettingUtils.enableLoadSystemAppList @@ -597,8 +596,6 @@ class SettingsFragment : BaseFragment(), View.OnClickL XToastUtils.info(getString(R.string.loading_app_list)) val request = OneTimeWorkRequestBuilder().build() WorkManager.getInstance(XUtil.getContext()).enqueue(request) - } else { - initAppSpinner() } } } @@ -1108,7 +1105,7 @@ class SettingsFragment : BaseFragment(), View.OnClickL private fun initAppSpinner() { //未开启异步获取已安装App信息开关时,不显示已安装APP下拉框 - if (!SettingUtils.enableLoadUserAppList && !SettingUtils.enableLoadSystemAppList) return + if (!SettingUtils.enableLoadAppList) return if (App.UserAppList.isEmpty() && App.SystemAppList.isEmpty()) { //XToastUtils.info(getString(R.string.loading_app_list)) diff --git a/app/src/main/java/com/idormy/sms/forwarder/workers/LoadAppListWorker.kt b/app/src/main/java/com/idormy/sms/forwarder/workers/LoadAppListWorker.kt index 32e479e1..0dda159b 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/workers/LoadAppListWorker.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/workers/LoadAppListWorker.kt @@ -11,14 +11,17 @@ import com.jeremyliao.liveeventbus.LiveEventBus import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext +@Suppress("PrivatePropertyName") class LoadAppListWorker( context: Context, workerParams: WorkerParameters, ) : CoroutineWorker(context, workerParams) { + private val TAG: String = LoadAppListWorker::class.java.simpleName + override suspend fun doWork(): Result = withContext(Dispatchers.IO) { if (App.LoadingAppList) { - Log.d("LoadAppListWorker", "LoadingAppList is true, return") + Log.d(TAG, "LoadingAppList is true, return") return@withContext Result.success() } @@ -36,10 +39,9 @@ class LoadAppListWorker( App.UserAppList.sortBy { appInfo -> appInfo.name } App.SystemAppList.sortBy { appInfo -> appInfo.name } - LiveEventBus.get(EVENT_LOAD_APP_LIST, String::class.java).post("finish") App.LoadingAppList = false - Log.d("LoadAppListWorker", "LoadAppListWorker finish") + Log.d(TAG, "LoadAppListWorker finish") return@withContext Result.success() }