Skip to content

Commit 857b2be

Browse files
committed
Bug fix: Switching auto clean mode not working
1 parent 14512a4 commit 857b2be

File tree

6 files changed

+42
-24
lines changed

6 files changed

+42
-24
lines changed

app/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ android {
99
applicationId "me.kyuubiran.qqcleaner"
1010
minSdkVersion 21
1111
targetSdkVersion 30
12-
versionCode 31
13-
versionName "1.6.1"
12+
versionCode 32
13+
versionName "1.6.2"
1414

1515
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
1616
}

app/src/main/java/me/kyuubiran/qqcleaner/activity/SettingsActivity.kt

+19-6
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,11 @@ import me.kyuubiran.qqcleaner.data.hostInfo
1616
import me.kyuubiran.qqcleaner.dialog.*
1717
import me.kyuubiran.qqcleaner.dialog.CleanDialog.showConfirmDialog
1818
import me.kyuubiran.qqcleaner.dialog.CleanDialog.showSetFileDateLimitDialog
19+
import me.kyuubiran.qqcleaner.utils.CleanManager.CUSTOMER_MODE
20+
import me.kyuubiran.qqcleaner.utils.CleanManager.FULL_MODE
21+
import me.kyuubiran.qqcleaner.utils.CleanManager.HALF_MODE
1922
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_AUTO_CLEAN_ENABLED
23+
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_AUTO_CLEAN_MODE
2024
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CLEAN_DELAY
2125
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CURRENT_CLEANED_TIME
2226
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CUSTOMER_CLEAN_LIST
@@ -38,7 +42,8 @@ class SettingsActivity : AppCompatTransferActivity() {
3842
@SuppressLint("SetTextI18n")
3943
override fun onCreate(savedInstanceState: Bundle?) {
4044
setTheme(R.style.AppTheme_Ftb)
41-
val mode = if (isInNightMode()) AppCompatDelegate.MODE_NIGHT_YES else AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM
45+
val mode =
46+
if (isInNightMode()) AppCompatDelegate.MODE_NIGHT_YES else AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM
4247
AppCompatDelegate.setDefaultNightMode(mode)
4348
super.onCreate(savedInstanceState)
4449
setContentView(R.layout.settings_activity)
@@ -132,11 +137,11 @@ class SettingsActivity : AppCompatTransferActivity() {
132137
//设置Item点击事件
133138
private fun setClickable() {
134139
halfClean.setOnPreferenceClickListener {
135-
showConfirmDialog(HALF_MODE, this.requireContext())
140+
showConfirmDialog(HALF_MODE_INT, this.requireContext())
136141
true
137142
}
138143
fullClean.setOnPreferenceClickListener {
139-
showConfirmDialog(FULL_MODE, this.requireContext())
144+
showConfirmDialog(FULL_MODE_INT, this.requireContext())
140145
true
141146
}
142147
customerCleanList.setOnPreferenceChangeListener { _, newValue ->
@@ -154,7 +159,7 @@ class SettingsActivity : AppCompatTransferActivity() {
154159
}
155160

156161
doCustomerClean.setOnPreferenceClickListener {
157-
showConfirmDialog(CUSTOMER_MODE, this.requireContext())
162+
showConfirmDialog(CUSTOMER_MODE_INT, this.requireContext())
158163
true
159164
}
160165
gotoGithub.setOnPreferenceClickListener {
@@ -163,7 +168,7 @@ class SettingsActivity : AppCompatTransferActivity() {
163168
true
164169
}
165170
joinQQGroup.setOnPreferenceClickListener {
166-
openQQGroup("827356240")
171+
openQQGroup()
167172
true
168173
}
169174
joinTelegram.setOnPreferenceClickListener {
@@ -199,6 +204,14 @@ class SettingsActivity : AppCompatTransferActivity() {
199204
CleanDialog.showCleanDelayDialog(this.requireContext(), autoClean)
200205
true
201206
}
207+
autoCleanMode.setOnPreferenceChangeListener { _, newValue ->
208+
when (newValue) {
209+
HALF_MODE -> setConfig(CFG_AUTO_CLEAN_MODE, HALF_MODE)
210+
FULL_MODE -> setConfig(CFG_AUTO_CLEAN_MODE, FULL_MODE)
211+
CUSTOMER_MODE -> setConfig(CFG_AUTO_CLEAN_MODE, CUSTOMER_MODE)
212+
}
213+
true
214+
}
202215
}
203216

204217
private fun openUrl(url: String) {
@@ -207,7 +220,7 @@ class SettingsActivity : AppCompatTransferActivity() {
207220
startActivity(intent)
208221
}
209222

210-
private fun openQQGroup(uin: String) {
223+
private fun openQQGroup(uin: String = "827356240") {
211224
val uri =
212225
Uri.parse("mqqapi://card/show_pslcard?src_type=internal&version=1&uin=$uin&card_type=group&source=qrcode")
213226
val intent = Intent(Intent.ACTION_VIEW, uri)

app/src/main/java/me/kyuubiran/qqcleaner/dialog/CleanDialog.kt

+9-9
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@ import me.kyuubiran.qqcleaner.utils.ConfigManager
1313
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CLEAN_DELAY
1414
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_DATE_LIMIT
1515

16-
const val HALF_MODE = 0
17-
const val FULL_MODE = 1
18-
const val CUSTOMER_MODE = 2
16+
const val HALF_MODE_INT = 0
17+
const val FULL_MODE_INT = 1
18+
const val CUSTOMER_MODE_INT = 2
1919

2020
object CleanDialog {
2121
private fun getMessage(mode: Int): String {
2222
return when (mode) {
23-
HALF_MODE -> "一键瘦身"
24-
FULL_MODE -> "完全瘦身"
25-
CUSTOMER_MODE -> "自定义瘦身"
23+
HALF_MODE_INT -> "一键瘦身"
24+
FULL_MODE_INT -> "完全瘦身"
25+
CUSTOMER_MODE_INT -> "自定义瘦身"
2626
else -> ""
2727
}
2828
}
@@ -37,9 +37,9 @@ object CleanDialog {
3737
.setNegativeButton("取消") { _, _ -> }
3838
.setPositiveButton("确定") { _, _ ->
3939
when (mode) {
40-
HALF_MODE -> CleanManager.halfClean()
41-
FULL_MODE -> CleanManager.fullClean()
42-
CUSTOMER_MODE -> CleanManager.customerClean()
40+
HALF_MODE_INT -> CleanManager.halfClean()
41+
FULL_MODE_INT -> CleanManager.fullClean()
42+
CUSTOMER_MODE_INT -> CleanManager.customerClean()
4343
}
4444
}
4545
.create()

app/src/main/java/me/kyuubiran/qqcleaner/utils/CleanManager.kt

+9-4
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ import com.github.kyuubiran.ezxhelper.utils.runtimeProcess
88
import com.github.kyuubiran.ezxhelper.utils.showToast
99
import me.kyuubiran.qqcleaner.data.hostApp
1010
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_AUTO_CLEAN_ENABLED
11+
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_AUTO_CLEAN_MODE
1112
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CLEAN_DELAY
1213
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CURRENT_CLEANED_TIME
13-
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_CUSTOMER_CLEAN_MODE
1414
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_DATE_LIMIT
1515
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_DATE_LIMIT_ENABLED
1616
import me.kyuubiran.qqcleaner.utils.ConfigManager.CFG_POWER_MODE_ENABLED
@@ -19,6 +19,7 @@ import me.kyuubiran.qqcleaner.utils.ConfigManager.getBool
1919
import me.kyuubiran.qqcleaner.utils.ConfigManager.getConfig
2020
import me.kyuubiran.qqcleaner.utils.ConfigManager.getInt
2121
import me.kyuubiran.qqcleaner.utils.ConfigManager.getLong
22+
import me.kyuubiran.qqcleaner.utils.ConfigManager.getString
2223
import me.kyuubiran.qqcleaner.utils.clean.CleanQQ
2324
import me.kyuubiran.qqcleaner.utils.clean.CleanWeChat
2425
import java.io.File
@@ -171,7 +172,7 @@ object CleanManager {
171172

172173
class AutoClean {
173174
private var time = 0L
174-
private val delay = ConfigManager.getInt(CFG_CLEAN_DELAY, 24) * 3600L * 1000L
175+
private val delay = getInt(CFG_CLEAN_DELAY, 24) * 3600L * 1000L
175176
private var mode = ""
176177

177178
//在加载模块的时候会检测并执行一次
@@ -180,7 +181,8 @@ object CleanManager {
180181
//判断间隔
181182
if (getBool(CFG_AUTO_CLEAN_ENABLED) && System.currentTimeMillis() - time > if (delay < 3600_000L) 24 * 3600L * 1000L else delay
182183
) {
183-
mode = getConfig(CFG_CUSTOMER_CLEAN_MODE).toString()
184+
mode = getString(CFG_AUTO_CLEAN_MODE)
185+
if (mode.isEmpty()) mode = HALF_MODE
184186
autoClean()
185187
time = System.currentTimeMillis()
186188
ConfigManager.setConfig(CFG_CURRENT_CLEANED_TIME, time)
@@ -191,14 +193,17 @@ object CleanManager {
191193
private fun autoClean() {
192194
appContext.showToast("好耶 开始自动清理了!")
193195
when (mode) {
196+
HALF_MODE -> {
197+
halfClean(false)
198+
}
194199
FULL_MODE -> {
195200
fullClean(false)
196201
}
197202
CUSTOMER_MODE -> {
198203
customerClean(false)
199204
}
200205
else -> {
201-
halfClean(false)
206+
appContext.showToast("坏耶 自动瘦身列表有误 请重新选择")
202207
}
203208
}
204209
}

app/src/main/java/me/kyuubiran/qqcleaner/utils/ConfigManager.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ object ConfigManager {
1212
private val config = File("${appContext.filesDir.absolutePath}/qqcleaner.json")
1313

1414
const val CFG_AUTO_CLEAN_ENABLED = "autoCleanEnabled"
15+
const val CFG_AUTO_CLEAN_MODE = "autoCleanMode"
1516
const val CFG_CURRENT_CLEANED_TIME = "cleanedTime"
1617
const val CFG_CUSTOMER_CLEAN_LIST = "customerList"
17-
const val CFG_CUSTOMER_CLEAN_MODE = "customerCleanMode"
1818
const val CFG_TOTAL_CLEANED_SIZE = "totalCleanedSize"
1919
const val CFG_CLEAN_DELAY = "cleanDelay"
2020
const val CFG_POWER_MODE_ENABLED = "powerModeEnabled"

app/src/main/res/values/strings.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@
4141
<string name="support_me">点我扶贫</string>
4242
<string name="support_me_hint">本模块完全免费开源 一切开发旨在学习 请勿用于非法用途 喜欢本模块的可以捐赠支持我 谢谢~</string>
4343
<string name="update_info">更新日志</string>
44-
<string name="update_info_content">-1.6.1(31)\n
45-
1.修复某些情况下微信入口打不开的问题
44+
<string name="update_info_content">-1.6.2(32)\n
45+
1.修复自动瘦身模式永远为普通模式的bug
4646
</string>
4747
<string name="join_qq_group">点击加入QQ群</string>
4848
<string name="join_qq_group_hint">有问题可以来群里反馈哦~</string>

0 commit comments

Comments
 (0)