manager: Fixed sus tab mapping error

This commit is contained in:
ShirkNeko
2025-10-18 17:40:23 +08:00
parent eb5fdbbf3f
commit 7b6470cc79
2 changed files with 14 additions and 33 deletions

View File

@@ -29,9 +29,9 @@ import com.sukisu.ultra.R
import com.sukisu.ultra.ui.susfs.component.*
import com.sukisu.ultra.ui.theme.CardConfig
import com.sukisu.ultra.ui.susfs.util.SuSFSManager
import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion1512
import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion158
import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion159
import com.sukisu.ultra.ui.susfs.util.SuSFSManager.isSusVersion1512
import com.sukisu.ultra.ui.util.getSuSFSVersion
import com.sukisu.ultra.ui.util.isAbDevice
import kotlinx.coroutines.launch
@@ -57,9 +57,9 @@ enum class SuSFSTab(val displayNameRes: Int) {
fun getAllTabs(isSusVersion158: Boolean, isSusVersion159: Boolean, isSusVersion1512: Boolean): List<SuSFSTab> {
return when {
isSusVersion1512 -> entries.toList()
isSusVersion159 -> entries.filter { it != SUS_MOUNTS}
isSusVersion158 -> entries.filter { it != SUS_LOOP_PATHS }
else -> entries.filter { it != PATH_SETTINGS && it != SUS_LOOP_PATHS && it != SUS_MOUNTS }
isSusVersion159 -> entries.filter { it != SUS_MAPS}
isSusVersion158 -> entries.filter { it != SUS_LOOP_PATHS && it != SUS_MAPS }
else -> entries.filter { it != PATH_SETTINGS && it != SUS_LOOP_PATHS && it != SUS_MAPS }
}
}
}

View File

@@ -245,38 +245,19 @@ object SuSFSManager {
return 0
}
/**
* 检查是否支持设置sdcard路径等功能1.5.8+
*/
fun isSusVersion158(): Boolean {
return try {
val currentVersion = getSuSFSVersion()
compareVersions(currentVersion, MIN_VERSION_FOR_HIDE_MOUNT) >= 0
private fun isVersionAtLeast(minVersion: String): Boolean = try {
compareVersions(getSuSFSVersion(), minVersion) >= 0
} catch (_: Exception) {
true
}
}
// 检查是否支持设置sdcard路径等功能1.5.8+
fun isSusVersion158(): Boolean = isVersionAtLeast(MIN_VERSION_FOR_HIDE_MOUNT)
/**
* 检查是否支持循环路径和AVC日志欺骗等功能1.5.9+
*/
fun isSusVersion159(): Boolean {
return try {
val currentVersion = getSuSFSVersion()
compareVersions(currentVersion, MIN_VERSION_FOR_LOOP_PATH) >= 0
} catch (_: Exception) {
true
}
}
// 检查是否支持循环路径和AVC日志欺骗等功能1.5.9+
fun isSusVersion159(): Boolean = isVersionAtLeast(MIN_VERSION_FOR_LOOP_PATH)
fun isSusVersion1512(): Boolean {
return try {
val currentVersion = getSuSFSVersion()
compareVersions(currentVersion, MIN_VERSION_SUS_MAPS) >= 0
} catch (_: Exception) {
true
}
}
// 检查是否支持隐藏内存映射1.5.12+
fun isSusVersion1512(): Boolean = isVersionAtLeast(MIN_VERSION_SUS_MAPS)
/**
* 获取当前模块配置