From ac9760aedd3242bd2498a313eb438f29142627f3 Mon Sep 17 00:00:00 2001 From: zarazaex69 Date: Sat, 11 Apr 2026 20:04:59 +0300 Subject: [PATCH] refactor(settings): remove auto-remove invalid servers feature --- .../main/java/xyz/zarazaex/olc/AppConfig.kt | 1 - .../xyz/zarazaex/olc/handler/MmkvManager.kt | 28 ------------------- .../java/xyz/zarazaex/olc/ui/MainActivity.kt | 19 ------------- .../zarazaex/olc/viewmodel/MainViewModel.kt | 21 -------------- .../app/src/main/res/values-ar/strings.xml | 2 -- .../app/src/main/res/values-bn/strings.xml | 2 -- .../src/main/res/values-bqi-rIR/strings.xml | 2 -- .../app/src/main/res/values-fa/strings.xml | 2 -- .../app/src/main/res/values-ru/strings.xml | 2 -- .../app/src/main/res/values-vi/strings.xml | 2 -- .../src/main/res/values-zh-rCN/strings.xml | 2 -- .../src/main/res/values-zh-rTW/strings.xml | 2 -- V2rayNG/app/src/main/res/values/strings.xml | 2 -- .../app/src/main/res/xml/pref_settings.xml | 6 ---- 14 files changed, 93 deletions(-) diff --git a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/AppConfig.kt b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/AppConfig.kt index c9e32113..3781fa92 100644 --- a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/AppConfig.kt +++ b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/AppConfig.kt @@ -72,7 +72,6 @@ object AppConfig { const val PREF_USE_HEV_TUNNEL = "pref_use_hev_tunnel_v2" const val PREF_HEV_TUNNEL_LOGLEVEL = "pref_hev_tunnel_loglevel" const val PREF_HEV_TUNNEL_RW_TIMEOUT = "pref_hev_tunnel_rw_timeout_v2" - const val PREF_AUTO_REMOVE_INVALID_AFTER_TEST = "pref_auto_remove_invalid_after_test" const val PREF_AUTO_SORT_AFTER_TEST = "pref_auto_sort_after_test" /** Cache keys. */ diff --git a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/handler/MmkvManager.kt b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/handler/MmkvManager.kt index 46af351a..3b0938f8 100644 --- a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/handler/MmkvManager.kt +++ b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/handler/MmkvManager.kt @@ -292,34 +292,6 @@ object MmkvManager { return count } - /** - * Removes invalid server configurations. - * - * @param guid The server GUID. - * @return The number of server configurations removed. - */ - fun removeInvalidServer(guid: String): Int { - var count = 0 - if (guid.isNotEmpty()) { - decodeServerAffiliationInfo(guid)?.let { aff -> - if (aff.testDelayMillis < 0L) { - removeServer(guid) - count++ - } - } - } else { - serverAffStorage.allKeys()?.forEach { key -> - decodeServerAffiliationInfo(key)?.let { aff -> - if (aff.testDelayMillis < 0L) { - removeServer(key) - count++ - } - } - } - } - return count - } - /** * Encodes the raw server configuration. * diff --git a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/ui/MainActivity.kt b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/ui/MainActivity.kt index a4186781..bfc7fb76 100644 --- a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/ui/MainActivity.kt +++ b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/ui/MainActivity.kt @@ -557,25 +557,6 @@ class MainActivity : HelperBaseActivity(), NavigationView.OnNavigationItemSelect .show() } - private fun delInvalidConfig() { - AlertDialog.Builder(this).setMessage(R.string.del_invalid_config_comfirm) - .setPositiveButton(android.R.string.ok) { _, _ -> - showLoading() - lifecycleScope.launch(Dispatchers.IO) { - val ret = mainViewModel.removeInvalidServer() - launch(Dispatchers.Main) { - mainViewModel.reloadServerList() - showStatus(getString(R.string.title_del_config_count, ret)) - hideLoading() - } - } - } - .setNegativeButton(android.R.string.cancel) { _, _ -> - //do noting - } - .show() - } - private fun sortByTestResults() { showLoading() lifecycleScope.launch(Dispatchers.IO) { diff --git a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/viewmodel/MainViewModel.kt b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/viewmodel/MainViewModel.kt index d4b3ca53..b6ff43ce 100644 --- a/V2rayNG/app/src/main/java/xyz/zarazaex/olc/viewmodel/MainViewModel.kt +++ b/V2rayNG/app/src/main/java/xyz/zarazaex/olc/viewmodel/MainViewModel.kt @@ -445,23 +445,6 @@ class MainViewModel(application: Application) : AndroidViewModel(application) { return count } - /** - * Removes invalid servers. - * @return The number of removed servers. - */ - fun removeInvalidServer(): Int { - var count = 0 - if (subscriptionId.isEmpty() && keywordFilter.isEmpty()) { - count += MmkvManager.removeInvalidServer("") - } else { - val serversCopy = serversCache.toList() - for (item in serversCopy) { - count += MmkvManager.removeInvalidServer(item.guid) - } - } - return count - } - /** * Sorts servers by their test results. */ @@ -580,10 +563,6 @@ class MainViewModel(application: Application) : AndroidViewModel(application) { fun onTestsFinished() { viewModelScope.launch(Dispatchers.Default) { - if (MmkvManager.decodeSettingsBool(AppConfig.PREF_AUTO_REMOVE_INVALID_AFTER_TEST)) { - removeInvalidServer() - } - if (MmkvManager.decodeSettingsBool(AppConfig.PREF_AUTO_SORT_AFTER_TEST, true)) { sortByTestResults() } diff --git a/V2rayNG/app/src/main/res/values-ar/strings.xml b/V2rayNG/app/src/main/res/values-ar/strings.xml index b5f43943..3af30cba 100644 --- a/V2rayNG/app/src/main/res/values-ar/strings.xml +++ b/V2rayNG/app/src/main/res/values-ar/strings.xml @@ -156,8 +156,6 @@ Auto connect at startup Automatically connects to the selected server at startup, which may be unsuccessful - Auto delete invalid config after testing - Test results may not be accurate; deleted config cannot be recovered. Auto sort after testing Test results may not be accurate; diff --git a/V2rayNG/app/src/main/res/values-bn/strings.xml b/V2rayNG/app/src/main/res/values-bn/strings.xml index 44e0c023..22f93603 100644 --- a/V2rayNG/app/src/main/res/values-bn/strings.xml +++ b/V2rayNG/app/src/main/res/values-bn/strings.xml @@ -154,8 +154,6 @@ Auto connect at startup Automatically connects to the selected server at startup, which may be unsuccessful - Auto delete invalid config after testing - Test results may not be accurate; deleted config cannot be recovered. Auto sort after testing Test results may not be accurate; diff --git a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml index f8f1e262..cc20ec57 100644 --- a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml +++ b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml @@ -155,8 +155,6 @@ منپیز خوتکار مجال ره ونی مجال ره وندن، خوساخوس و سرور پسند بیڌه منپیز ابۊ که گاشڌ نا مووفق بۊ. - پاک کردن خوتکار کانفیگ نا موئتبر بئڌ آزمایش - نتیجه یل آزمایش گاشڌ دییق نبۊن؛ کانفیگ پاک وابیڌه ن نتری وورگنی. ترتیب خوتکار بئڌ آزمایش نتیجه یل آزمایش گاشڌ دییق نبۊن؛ diff --git a/V2rayNG/app/src/main/res/values-fa/strings.xml b/V2rayNG/app/src/main/res/values-fa/strings.xml index 5b548397..464261d3 100644 --- a/V2rayNG/app/src/main/res/values-fa/strings.xml +++ b/V2rayNG/app/src/main/res/values-fa/strings.xml @@ -152,8 +152,6 @@ اتصال خودکار هنگام راه اندازی هنگام راه اندازی به طور خودکار به سرور انتخابی متصل می شود که ممکن است ناموفق باشد. - Auto delete invalid config after testing - Test results may not be accurate; deleted config cannot be recovered. Auto sort after testing Test results may not be accurate; diff --git a/V2rayNG/app/src/main/res/values-ru/strings.xml b/V2rayNG/app/src/main/res/values-ru/strings.xml index 636d87b2..7d2bd222 100644 --- a/V2rayNG/app/src/main/res/values-ru/strings.xml +++ b/V2rayNG/app/src/main/res/values-ru/strings.xml @@ -156,8 +156,6 @@ Автоподключение при запуске Автоматически подключаться к выбранному серверу при запуске приложения (может оказаться неудачным) - Автоудаление нерабочих профилей - Автоматическое удаление нерабочих профилей после проверки (результаты проверки могут быть неточными; восстановить удалённые профили невозможно) Автосортировка профилей Автоматическая сортировка профилей после проверки (результаты проверки могут быть неточными) diff --git a/V2rayNG/app/src/main/res/values-vi/strings.xml b/V2rayNG/app/src/main/res/values-vi/strings.xml index f2059294..681bf0a8 100644 --- a/V2rayNG/app/src/main/res/values-vi/strings.xml +++ b/V2rayNG/app/src/main/res/values-vi/strings.xml @@ -153,8 +153,6 @@ Auto connect at startup Automatically connects to the selected server at startup, which may be unsuccessful - Auto delete invalid config after testing - Test results may not be accurate; deleted config cannot be recovered. Auto sort after testing Test results may not be accurate; diff --git a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml index 47a6a4ad..59e96d6b 100644 --- a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml +++ b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml @@ -152,8 +152,6 @@ 开机时自动连接 开机时自动连接选择的服务器,可能会不成功 - 测试后自动删除无效配置 - 测试结果可能不准确;已删除的配置无法恢复。 测试后自动排序 测试结果可能不准确; diff --git a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml index fd37d68c..d8b3d748 100644 --- a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml +++ b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml @@ -153,8 +153,6 @@ 開機時自動連線 開機時自動連線選擇的伺服器,可能會不成功 - 測試後自動刪除無效配置 - 測試結果可能不準確;已刪除的配置無法復原。 測試後自動排序 測試結果可能不準確; diff --git a/V2rayNG/app/src/main/res/values/strings.xml b/V2rayNG/app/src/main/res/values/strings.xml index bc3cfb01..6ac0d80d 100644 --- a/V2rayNG/app/src/main/res/values/strings.xml +++ b/V2rayNG/app/src/main/res/values/strings.xml @@ -157,8 +157,6 @@ Auto connect at startup Automatically connects to the selected server at startup, which may be unsuccessful - Auto delete invalid config after testing - Test results may not be accurate; deleted config cannot be recovered. Auto sort after testing Test results may not be accurate; diff --git a/V2rayNG/app/src/main/res/xml/pref_settings.xml b/V2rayNG/app/src/main/res/xml/pref_settings.xml index d82374a6..af1d5f72 100644 --- a/V2rayNG/app/src/main/res/xml/pref_settings.xml +++ b/V2rayNG/app/src/main/res/xml/pref_settings.xml @@ -266,12 +266,6 @@ android:summary="@string/summary_pref_is_booted" android:title="@string/title_pref_is_booted" /> - -