diff --git a/docs/README.md b/docs/README.md index 44fd5e79..42fd1631 100644 --- a/docs/README.md +++ b/docs/README.md @@ -120,6 +120,9 @@ KPM 模板地址: https://github.com/udochina/KPM-Build-Anywhere 5. 更多自定义功能 6. 对 KPM 内核模块的支持 +## 疑难解答 +1. 卸载 KernelSU 管理器设备卡死。→ 卸载包名为 com.sony.playmemories.mobile 的应用。 + ## 许可证 - `kernel` 目录下的文件是 [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)。 diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt index 5fd7664b..0a29713c 100644 --- a/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/MainActivity.kt @@ -324,6 +324,9 @@ private fun BottomBar(navController: NavHostController) { val showKpmInfo = context.getSharedPreferences("settings", Context.MODE_PRIVATE) .getBoolean("show_kpm_info", true) + val isHideOtherInfo = LocalContext.current.getSharedPreferences("settings", Context.MODE_PRIVATE) + .getBoolean("is_hide_other_info", false) + NavigationBar( modifier = Modifier.windowInsetsPadding( WindowInsets.navigationBars.only(WindowInsetsSides.Horizontal) @@ -356,7 +359,7 @@ private fun BottomBar(navController: NavHostController) { icon = { BadgedBox( badge = { - if (kpmModuleCount > 0) { + if (kpmModuleCount > 0 && !isHideOtherInfo) { Badge( containerColor = MaterialTheme.colorScheme.secondary ) { @@ -400,7 +403,7 @@ private fun BottomBar(navController: NavHostController) { icon = { BadgedBox( badge = { - if (superuserCount > 0) { + if (superuserCount > 0 && !isHideOtherInfo) { Badge( containerColor = MaterialTheme.colorScheme.secondary ) { @@ -443,7 +446,7 @@ private fun BottomBar(navController: NavHostController) { icon = { BadgedBox( badge = { - if (moduleCount > 0) { + if (moduleCount > 0 && !isHideOtherInfo) { Badge( containerColor = MaterialTheme.colorScheme.secondary ) { Text( diff --git a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt index 9f7efe8b..a6869d70 100644 --- a/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt +++ b/manager/app/src/main/java/com/sukisu/ultra/ui/screen/Home.kt @@ -33,15 +33,7 @@ import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.verticalScroll import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Android -import androidx.compose.material.icons.filled.Archive -import androidx.compose.material.icons.filled.Info -import androidx.compose.material.icons.filled.Memory -import androidx.compose.material.icons.filled.PhoneAndroid -import androidx.compose.material.icons.filled.Refresh -import androidx.compose.material.icons.filled.Security -import androidx.compose.material.icons.filled.SettingsSuggest -import androidx.compose.material.icons.filled.Storage +import androidx.compose.material.icons.filled.* import androidx.compose.material.icons.outlined.Block import androidx.compose.material.icons.outlined.TaskAlt import androidx.compose.material.icons.outlined.Warning @@ -96,10 +88,6 @@ import com.sukisu.ultra.ui.theme.CardConfig.cardElevation import com.sukisu.ultra.ui.theme.getCardColors import com.sukisu.ultra.ui.theme.getCardElevation import com.sukisu.ultra.ui.util.checkNewVersion -import com.sukisu.ultra.ui.util.getKpmModuleCount -import com.sukisu.ultra.ui.util.getKpmVersion -import com.sukisu.ultra.ui.util.getModuleCount -import com.sukisu.ultra.ui.util.getSuperuserCount import com.sukisu.ultra.ui.util.module.LatestVersionInfo import com.sukisu.ultra.ui.util.reboot import com.sukisu.ultra.ui.viewmodel.HomeViewModel @@ -138,8 +126,6 @@ fun HomeScreen(navigator: DestinationsNavigator) { Scaffold( topBar = { TopBar( - kernelVersion = viewModel.systemStatus.kernelVersion, - onInstallClick = { navigator.navigate(InstallScreenDestination) }, scrollBehavior = scrollBehavior ) }, @@ -200,8 +186,6 @@ fun HomeScreen(navigator: DestinationsNavigator) { InfoCard( systemInfo = viewModel.systemInfo, isSimpleMode = viewModel.isSimpleMode, - isHideVersion = viewModel.isHideVersion, - isHideOtherInfo = viewModel.isHideOtherInfo, isHideSusfsStatus = viewModel.isHideSusfsStatus, showKpmInfo = viewModel.showKpmInfo, lkmMode = viewModel.systemStatus.lkmMode, @@ -279,8 +263,6 @@ fun RebootDropdownItem(@StringRes id: Int, reason: String = "") { @OptIn(ExperimentalMaterial3Api::class) @Composable private fun TopBar( - kernelVersion: KernelVersion, - onInstallClick: () -> Unit, scrollBehavior: TopAppBarScrollBehavior? = null ) { val colorScheme = MaterialTheme.colorScheme @@ -308,7 +290,7 @@ private fun TopBar( showDropdown = true }) { Icon( - imageVector = Icons.Filled.Refresh, + imageVector = Icons.Filled.PowerSettingsNew, contentDescription = stringResource(id = R.string.reboot) ) @@ -636,8 +618,6 @@ fun DonateCard() { private fun InfoCard( systemInfo: HomeViewModel.SystemInfo, isSimpleMode: Boolean, - isHideVersion: Boolean, - isHideOtherInfo: Boolean, isHideSusfsStatus: Boolean, showKpmInfo: Boolean, lkmMode: Boolean? @@ -655,7 +635,7 @@ private fun InfoCard( fun InfoCardItem( label: String, content: String, - icon: ImageVector = Icons.Default.Info + icon: ImageVector? = null, ) { Row( verticalAlignment = Alignment.Top, @@ -663,14 +643,15 @@ private fun InfoCard( .fillMaxWidth() .padding(vertical = 8.dp) ) { - Icon( - imageVector = icon, - contentDescription = label, - modifier = Modifier - .size(28.dp) - .padding(vertical = 4.dp), - tint = MaterialTheme.colorScheme.primary, - ) + if (icon != null) { + Icon( + imageVector = icon, + contentDescription = label, + modifier = Modifier + .size(28.dp) + .padding(vertical = 4.dp), + ) + } Spacer(modifier = Modifier.width(16.dp)) Column( modifier = Modifier