diff --git a/docs/README-en.md b/docs/README-en.md index ae2f6f27..77b3993c 100644 --- a/docs/README-en.md +++ b/docs/README-en.md @@ -80,6 +80,14 @@ Note: You only need to fill in the first two kernel versions, such as 5.10, 5.15 - The file in the “kernel” directory is [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html). - All other parts except the “kernel” directory are [GPL-3.0 or later](https://www.gnu.org/licenses/gpl-3.0.html). +## Sponsorship list +- [Ktouls](https://github.com/Ktouls) Thanks so much for bringing me support! + + + + +How the above list does not have your name, I will keep you updated, thanks again for your support! + ## Contributions - [KernelSU](https://github.com/tiann/KernelSU): original project diff --git a/docs/README.md b/docs/README.md index 0464f80d..fc9f4e8e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -81,6 +81,14 @@ curl -LSs "https://raw.githubusercontent.com/ShirkNeko/KernelSU/main/kernel/setu - `kernel` 目录下的文件是 [GPL-2.0-only](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)。 - 除 `kernel` 目录外,所有其他部分均为 [GPL-3.0 或更高版本](https://www.gnu.org/licenses/gpl-3.0.html)。 +## 赞助名单 +- [Ktouls](https://github.com/Ktouls)非常感谢给我带来的支持 + + + + +如何以上名单没有你的名称,我会及时更新,再次感谢大家的支持 + ## 贡献 - [KernelSU](https://github.com/tiann/KernelSU):原始项目 diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/Home.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/Home.kt index 497b9ecb..36124a70 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/Home.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/Home.kt @@ -321,15 +321,15 @@ private fun StatusCard( ) Spacer(modifier = Modifier.height(4.dp)) - val suSFS = getSuSFS() // 假设返回值是 "Supported"、"Not Supported" 或其他 + val suSFS = getSuSFS() val translatedStatus = when (suSFS) { "Supported" -> stringResource(R.string.status_supported) "Not Supported" -> stringResource(R.string.status_not_supported) - else -> stringResource(R.string.status_unknown) // 默认值 + else -> stringResource(R.string.status_unknown) } Text( - text = stringResource(R.string.home_susfs, translatedStatus), // 动态插入翻译后的值 + text = stringResource(R.string.home_susfs, translatedStatus), style = MaterialTheme.typography.bodyMedium ) } @@ -510,18 +510,31 @@ private fun InfoCard() { if (!isSimpleMode) { Spacer(modifier = Modifier.height(16.dp)) - val isSUS_SU = getSuSFSFeatures() == "CONFIG_KSU_SUSFS_SUS_SU" val suSFS = getSuSFS() if (suSFS == "Supported") { - val susSUModeLabel = stringResource(R.string.sus_su_mode) - val susSUModeValue = susfsSUS_SU_Mode() // 获取 SuS SU 模式的值 - val susSUMode = if (isSUS_SU) " $susSUModeLabel $susSUModeValue" else "" + InfoCardItem( + stringResource(R.string.home_susfs_version), + "${getSuSFSVersion()} (${stringResource(R.string.manual_hook)})" + ) + } else { + val susSUMode = try { + susfsSUS_SU_Mode() + } catch (e: Exception) { + 0 + } - val label = stringResource(R.string.home_susfs_version) // 获取 label 的值 - val content = "${getSuSFSVersion()} (${getSuSFSVariant()})$susSUMode" + if (susSUMode == 2 || susSUMode == 0) { + val isSUS_SU = getSuSFSFeatures() == "CONFIG_KSU_SUSFS_SUS_SU" + val susSUModeLabel = stringResource(R.string.sus_su_mode) + val susSUModeValue = susSUMode.toString() + val susSUModeText = if (isSUS_SU) " $susSUModeLabel $susSUModeValue" else "" - InfoCardItem(label, content) + InfoCardItem( + stringResource(R.string.home_susfs_version), + "${getSuSFSVersion()} (${getSuSFSVariant()})$susSUModeText" + ) + } } } } diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/MoreSettings.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/MoreSettings.kt index 042b1177..b112845c 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/MoreSettings.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/screen/MoreSettings.kt @@ -22,6 +22,7 @@ import androidx.activity.result.contract.ActivityResultContracts import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.shape.CircleShape import androidx.compose.material3.Slider import androidx.compose.material3.SliderDefaults @@ -122,14 +123,14 @@ fun MoreSettingsScreen(navigator: DestinationsNavigator) { // 主题色选项 val themeColorOptions = listOf( - "黄色" to ThemeColors.Default, - "蓝色" to ThemeColors.Blue, - "绿色" to ThemeColors.Green, - "紫色" to ThemeColors.Purple, - "橙色" to ThemeColors.Orange, - "粉色" to ThemeColors.Pink, - "高级灰" to ThemeColors.Gray, - "象牙白" to ThemeColors.Ivory + stringResource(R.string.color_default) to ThemeColors.Default, + stringResource(R.string.color_blue) to ThemeColors.Blue, + stringResource(R.string.color_green) to ThemeColors.Green, + stringResource(R.string.color_purple) to ThemeColors.Purple, + stringResource(R.string.color_orange) to ThemeColors.Orange, + stringResource(R.string.color_pink) to ThemeColors.Pink, + stringResource(R.string.color_gray) to ThemeColors.Gray, + stringResource(R.string.color_ivory) to ThemeColors.Ivory ) var showThemeColorDialog by remember { mutableStateOf(false) } @@ -236,8 +237,8 @@ fun MoreSettingsScreen(navigator: DestinationsNavigator) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { SwitchItem( icon = Icons.Filled.ColorLens, - title = "动态颜色", - summary = "使用系统主题的动态颜色", + title = stringResource(R.string.dynamic_color_title), + summary = stringResource(R.string.dynamic_color_summary), checked = useDynamicColor ) { enabled -> useDynamicColor = enabled @@ -251,15 +252,15 @@ fun MoreSettingsScreen(navigator: DestinationsNavigator) { headlineContent = { Text("主题颜色") }, supportingContent = { val currentThemeName = when (ThemeConfig.currentTheme) { - is ThemeColors.Default -> "黄色" - is ThemeColors.Blue -> "蓝色" - is ThemeColors.Green -> "绿色" - is ThemeColors.Purple -> "紫色" - is ThemeColors.Orange -> "橙色" - is ThemeColors.Pink -> "粉色" - is ThemeColors.Gray -> "高级灰" - is ThemeColors.Ivory -> "象牙白" - else -> "默认" + is ThemeColors.Default -> stringResource(R.string.color_default) + is ThemeColors.Blue -> stringResource(R.string.color_blue) + is ThemeColors.Green -> stringResource(R.string.color_green) + is ThemeColors.Purple -> stringResource(R.string.color_purple) + is ThemeColors.Orange -> stringResource(R.string.color_orange) + is ThemeColors.Pink -> stringResource(R.string.color_pink) + is ThemeColors.Gray -> stringResource(R.string.color_gray) + is ThemeColors.Ivory -> stringResource(R.string.color_ivory) + else -> stringResource(R.string.color_default) } Text(currentThemeName) }, @@ -269,7 +270,7 @@ fun MoreSettingsScreen(navigator: DestinationsNavigator) { if (showThemeColorDialog) { AlertDialog( onDismissRequest = { showThemeColorDialog = false }, - title = { Text("选择主题色") }, + title = { Text(stringResource(R.string.choose_theme_color)) }, text = { Column { themeColorOptions.forEach { (name, theme) -> @@ -428,19 +429,42 @@ fun MoreSettingsScreen(navigator: DestinationsNavigator) { @Composable private fun getSliderColors(cardAlpha: Float, useCustomColors: Boolean = false): SliderColors { val theme = ThemeConfig.currentTheme - return if (useCustomColors) { - // 使用自定义的主题色设置滑条颜色 - SliderDefaults.colors( - activeTrackColor = theme.getCustomSliderActiveColor(), - inactiveTrackColor = theme.getCustomSliderInactiveColor(), - thumbColor = theme.getCustomSliderActiveColor() - ) - } else { - // 使用原有的动态颜色设置 - val activeColor = Color.Magenta.copy(alpha = cardAlpha) - SliderDefaults.colors( - activeTrackColor = activeColor, - inactiveTrackColor = Color.Gray.copy(alpha = 0.3f) - ) + val isDarkTheme = ThemeConfig.forceDarkMode ?: isSystemInDarkTheme() + val useDynamicColor = ThemeConfig.useDynamicColor + + return when { + // 使用动态颜色时 + useDynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { + SliderDefaults.colors( + activeTrackColor = MaterialTheme.colorScheme.primary.copy(alpha = 0.8f), + inactiveTrackColor = MaterialTheme.colorScheme.primary.copy(alpha = 0.3f), + thumbColor = MaterialTheme.colorScheme.primary + ) + } + // 使用自定义主题色时 + useCustomColors -> { + SliderDefaults.colors( + activeTrackColor = theme.getCustomSliderActiveColor(), + inactiveTrackColor = theme.getCustomSliderInactiveColor(), + thumbColor = theme.Primary + ) + } + else -> { + val activeColor = if (isDarkTheme) { + theme.Primary.copy(alpha = cardAlpha) + } else { + theme.Primary.copy(alpha = cardAlpha) + } + val inactiveColor = if (isDarkTheme) { + Color.DarkGray.copy(alpha = 0.3f) + } else { + Color.LightGray.copy(alpha = 0.3f) + } + SliderDefaults.colors( + activeTrackColor = activeColor, + inactiveTrackColor = inactiveColor, + thumbColor = activeColor + ) + } } } diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/CardManage.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/CardManage.kt index 84ae0982..1e8cf91a 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/CardManage.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/CardManage.kt @@ -12,9 +12,9 @@ import androidx.compose.ui.unit.dp import androidx.compose.material3.CardDefaults object CardConfig { - val defaultElevation: Dp = 4.dp // 默认阴影值 + val defaultElevation: Dp = 2.dp - var cardAlpha by mutableStateOf(1f) // 默认100%透明度 + var cardAlpha by mutableStateOf(1f) var cardElevation by mutableStateOf(defaultElevation) fun save(context: Context) { @@ -28,7 +28,7 @@ object CardConfig { fun load(context: Context) { val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE) - cardAlpha = prefs.getFloat("card_alpha", 1f) // 默认1f + cardAlpha = prefs.getFloat("card_alpha", 1f) cardElevation = if (prefs.getBoolean("custom_background_enabled", false)) 0.dp else defaultElevation } } diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Color.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Color.kt index 13d6e2e5..1f97a2e9 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Color.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Color.kt @@ -15,17 +15,17 @@ sealed class ThemeColors { abstract val OnPrimaryContainer: Color abstract val OnSecondaryContainer: Color abstract val OnTertiaryContainer: Color + open fun getCustomSliderActiveColor(): Color = Primary open fun getCustomSliderInactiveColor(): Color = PrimaryContainer - - // (黄色) + // Default Theme (Yellow) object Default : ThemeColors() { override val Primary = Color(0xFFFFD700) override val Secondary = Color(0xFFFFBC52) override val Tertiary = Color(0xFF795548) - override val OnPrimary = Color(0xFF000000) - override val OnSecondary = Color(0xFF000000) + override val OnPrimary = Color(0xFFFFFFFF) + override val OnSecondary = Color(0xFFFFFFFF) override val OnTertiary = Color(0xFFFFFFFF) override val PrimaryContainer = Color(0xFFFFFBE9) override val SecondaryContainer = Color(0xFFFFE6B3) @@ -33,10 +33,9 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 蓝色主题 + + // Blue Theme object Blue : ThemeColors() { override val Primary = Color(0xFF2196F3) override val Secondary = Color(0xFF1E88E5) @@ -50,11 +49,9 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 绿色主题 + // Green Theme object Green : ThemeColors() { override val Primary = Color(0xFF4CAF50) override val Secondary = Color(0xFF43A047) @@ -68,35 +65,31 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 紫色主题 + // Purple Theme object Purple : ThemeColors() { override val Primary = Color(0xFF9C27B0) override val Secondary = Color(0xFF8E24AA) override val Tertiary = Color(0xFF4A148C) override val OnPrimary = Color(0xFFFFFFFF) override val OnSecondary = Color(0xFFFFFFFF) - override val OnTertiary = Color(0xFFE1BEE7) + override val OnTertiary = Color(0xFFFFFFFF) override val PrimaryContainer = Color(0xFFF3E5F5) override val SecondaryContainer = Color(0xFFE1BEE7) override val TertiaryContainer = Color(0xFFCE93D8) override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 橙色主题 + // Orange Theme object Orange : ThemeColors() { override val Primary = Color(0xFFFF9800) override val Secondary = Color(0xFFFB8C00) override val Tertiary = Color(0xFFE65100) - override val OnPrimary = Color(0xFF000000) - override val OnSecondary = Color(0xFF000000) + override val OnPrimary = Color(0xFFFFFFFF) + override val OnSecondary = Color(0xFFFFFFFF) override val OnTertiary = Color(0xFFFFFFFF) override val PrimaryContainer = Color(0xFFFFF3E0) override val SecondaryContainer = Color(0xFFFFE0B2) @@ -104,11 +97,9 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 粉色主题 + // Pink Theme object Pink : ThemeColors() { override val Primary = Color(0xFFE91E63) override val Secondary = Color(0xFFD81B60) @@ -122,10 +113,9 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } + // Gray Theme object Gray : ThemeColors() { override val Primary = Color(0xFF9E9E9E) override val Secondary = Color(0xFF757575) @@ -139,25 +129,34 @@ sealed class ThemeColors { override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer } - // 象牙白主题 + // Ivory Theme object Ivory : ThemeColors() { override val Primary = Color(0xFFFAF0E6) override val Secondary = Color(0xFFFFF0E6) override val Tertiary = Color(0xFFD7CCC8) - override val OnPrimary = Color(0xFF000000) - override val OnSecondary = Color(0xFF000000) - override val OnTertiary = Color(0xFF000000) + override val OnPrimary = Color(0xFFFFFFFF) + override val OnSecondary = Color(0xFFFFFFFF) + override val OnTertiary = Color(0xFFFFFFFF) override val PrimaryContainer = Color(0xFFFFFAE3) override val SecondaryContainer = Color(0xFFFFF0E6) override val TertiaryContainer = Color(0xFFFFF0E6) override val OnPrimaryContainer = Color(0xFF000000) override val OnSecondaryContainer = Color(0xFF000000) override val OnTertiaryContainer = Color(0xFF000000) - override fun getCustomSliderActiveColor(): Color = Primary - override fun getCustomSliderInactiveColor(): Color = PrimaryContainer + } + + companion object { + fun fromName(name: String): ThemeColors = when (name.lowercase()) { + "blue" -> Blue + "green" -> Green + "purple" -> Purple + "orange" -> Orange + "pink" -> Pink + "gray" -> Gray + "ivory" -> Ivory + else -> Default + } } } \ No newline at end of file diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Theme.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Theme.kt index 98b19ccc..7ae50a94 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Theme.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/theme/Theme.kt @@ -42,17 +42,19 @@ private fun getDarkColorScheme() = darkColorScheme( primary = ThemeConfig.currentTheme.Primary, onPrimary = ThemeConfig.currentTheme.OnPrimary, primaryContainer = ThemeConfig.currentTheme.PrimaryContainer, - onPrimaryContainer = ThemeConfig.currentTheme.OnPrimaryContainer, + onPrimaryContainer = Color.White, secondary = ThemeConfig.currentTheme.Secondary, onSecondary = ThemeConfig.currentTheme.OnSecondary, secondaryContainer = ThemeConfig.currentTheme.SecondaryContainer, - onSecondaryContainer = ThemeConfig.currentTheme.OnSecondaryContainer, + onSecondaryContainer = Color.White, tertiary = ThemeConfig.currentTheme.Tertiary, onTertiary = ThemeConfig.currentTheme.OnTertiary, tertiaryContainer = ThemeConfig.currentTheme.TertiaryContainer, - onTertiaryContainer = ThemeConfig.currentTheme.OnTertiaryContainer, + onTertiaryContainer = Color.White, background = Color.Transparent, - surface = Color.Transparent + surface = Color.Transparent, + onBackground = Color.White, + onSurface = Color.White ) @Composable @@ -115,7 +117,9 @@ fun KernelSUTheme( dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { if (darkTheme) dynamicDarkColorScheme(context).copy( background = Color.Transparent, - surface = Color.Transparent + surface = Color.Transparent, + onBackground = Color.White, + onSurface = Color.White ) else dynamicLightColorScheme(context).copy( background = Color.Transparent, surface = Color.Transparent @@ -198,7 +202,7 @@ fun KernelSUTheme( } } -// 扩展函数 + fun Context.saveCustomBackground(uri: Uri?) { val newUri = uri?.let { copyImageToInternalStorage(it) } getSharedPreferences("theme_prefs", Context.MODE_PRIVATE) @@ -280,6 +284,6 @@ fun Context.saveDynamicColorState(enabled: Boolean) { fun Context.loadDynamicColorState() { val enabled = getSharedPreferences("theme_prefs", Context.MODE_PRIVATE) - .getBoolean("use_dynamic_color", false) + .getBoolean("use_dynamic_color", true) ThemeConfig.useDynamicColor = enabled } \ No newline at end of file diff --git a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/util/SELinuxChecker.kt b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/util/SELinuxChecker.kt index d92eaa3e..50f12188 100644 --- a/manager/app/src/main/java/shirkneko/zako/sukisu/ui/util/SELinuxChecker.kt +++ b/manager/app/src/main/java/shirkneko/zako/sukisu/ui/util/SELinuxChecker.kt @@ -7,28 +7,27 @@ import shirkneko.zako.sukisu.R @Composable fun getSELinuxStatus(): String { - val shell = Shell.Builder.create() - .setFlags(Shell.FLAG_REDIRECT_STDERR) - .build("sh") - + val shell = Shell.Builder.create().build("sh") val list = ArrayList() + val result = shell.use { it.newJob().add("getenforce").to(list, list).exec() } - val output = result.out.joinToString("\n").trim() - if (result.isSuccess) { - return when (output) { + val output = list.joinToString("\n").trim() + + return if (result.isSuccess) { + when (output) { "Enforcing" -> stringResource(R.string.selinux_status_enforcing) "Permissive" -> stringResource(R.string.selinux_status_permissive) "Disabled" -> stringResource(R.string.selinux_status_disabled) else -> stringResource(R.string.selinux_status_unknown) } - } - - return if (output.endsWith("Permission denied")) { - stringResource(R.string.selinux_status_enforcing) } else { - stringResource(R.string.selinux_status_unknown) + if (output.contains("Permission denied")) { + stringResource(R.string.selinux_status_enforcing) + } else { + stringResource(R.string.selinux_status_unknown) + } } } \ No newline at end of file diff --git a/manager/app/src/main/res/drawable/ic_launcher.png b/manager/app/src/main/res/drawable/ic_launcher.png index a3df1289..e482d18b 100644 Binary files a/manager/app/src/main/res/drawable/ic_launcher.png and b/manager/app/src/main/res/drawable/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-hdpi/ic_launcher.png b/manager/app/src/main/res/mipmap-hdpi/ic_launcher.png index 49f29616..9e4cc510 100644 Binary files a/manager/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-ldpi/ic_launcher.png b/manager/app/src/main/res/mipmap-ldpi/ic_launcher.png index 71a8ce53..35c99300 100644 Binary files a/manager/app/src/main/res/mipmap-ldpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-ldpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-mdpi/ic_launcher.png b/manager/app/src/main/res/mipmap-mdpi/ic_launcher.png index 84df5918..2e293b50 100644 Binary files a/manager/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/manager/app/src/main/res/mipmap-xhdpi/ic_launcher.png index d18b30d0..f692f26d 100644 Binary files a/manager/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index e78635ee..bfc5b2ee 100644 Binary files a/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png index ddcb1247..592e5bda 100644 Binary files a/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and b/manager/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/manager/app/src/main/res/values-ar/strings.xml b/manager/app/src/main/res/values-ar/strings.xml index 70acecc9..a9f57193 100644 --- a/manager/app/src/main/res/values-ar/strings.xml +++ b/manager/app/src/main/res/values-ar/strings.xml @@ -72,11 +72,10 @@ القيمة الافتراضية العامة لـ\"إلغاء تحميل الإضافات\" في ملفات تعريف التطبيقات. إذا تم تمكينه، إزالة جميع تعديلات الإضافات على النظام للتطبيقات التي لا تحتوي على مجموعة ملف تعريف. سيسمح تمكين هذا الخيار لـKernelSU باستعادة أي ملفات معدلة بواسطة الإضافات لهذا التطبيق. المجال - القواعد + القواعد إعادة تشغيل التطبيق فشل تحديث قواعد SELinux لـ %s اسم الملف الشخصي - إصدار KernelSU الحالي %d منخفض جدًا بحيث لا يعمل المدير بشكل صحيح. الرجاء الترقية إلى الإصدار %d أو أعلى! سجل التغييرات تم الاستيراد بنجاح تصدير إلى الحافظة diff --git a/manager/app/src/main/res/values-bn/strings.xml b/manager/app/src/main/res/values-bn/strings.xml index ada8a74f..0fa6426c 100644 --- a/manager/app/src/main/res/values-bn/strings.xml +++ b/manager/app/src/main/res/values-bn/strings.xml @@ -41,7 +41,7 @@ রিফ্রেশ শো সিস্টেম অ্যাপস হাইড সিস্টেম অ্যাপস - সেন্ড লগ + সেন্ড লগ সেইফ মোড রিবুট এপ্লাই মডিউলগুলি অক্ষম কারণ তারা ম্যাজিস্কের সাথে বিরোধিতা করে! @@ -61,6 +61,5 @@ গ্লোবাল আলাদাভাবে আনমাউন্ট মোডিউল - ম্যানেজার সঠিকভাবে কাজ করার জন্য বর্তমান KernelSU সংস্করণ %d খুবই কম। অনুগ্রহ করে %d বা উচ্চতর সংস্করণে আপগ্রেড করুন! লগ সংরক্ষণ করুন diff --git a/manager/app/src/main/res/values-bs/strings.xml b/manager/app/src/main/res/values-bs/strings.xml index 2e0da907..cebe99d6 100644 --- a/manager/app/src/main/res/values-bs/strings.xml +++ b/manager/app/src/main/res/values-bs/strings.xml @@ -9,7 +9,6 @@ SELinux kontekst Umount module Ažuriranje Profila Aplikacije za %s nije uspjelo - Trenutna KernelSU verzija %d je preniska da bi upravitelj ispravno radio. Molimo vas da nadogradite na verziju %d ili noviju! Umount module po zadanom Globalna zadana vrijednost za \"Umount module\" u Profilima Aplikacije. Ako je omogućeno, uklonit će sve izmjene modula na sistemu za aplikacije koje nemaju postavljen Profil. Uključivanjem ove opcije omogućit će KernelSU-u da vrati sve izmjenute datoteke od strane modula za ovu aplikaciju. @@ -18,7 +17,7 @@ Započnite sa skidanjem: %s Nova verzija: %s je dostupna, kliknite da skinete Pokrenite - Prisilno Zaustavite + Prisilno Zaustavite Resetujte U Provođenju Početna diff --git a/manager/app/src/main/res/values-da/strings.xml b/manager/app/src/main/res/values-da/strings.xml index 3cae38f2..3ff7a8ce 100644 --- a/manager/app/src/main/res/values-da/strings.xml +++ b/manager/app/src/main/res/values-da/strings.xml @@ -74,8 +74,7 @@ Opdatering af App Profil for %s fejlede Den globale standard værdi for \"Afmonter moduler\" i App Profiler. Hvis aktiveret vil den fjerne alle modulers modifikationer til system applikationerne der ikke har en sat Profil. Domæne - Regler + Regler Genstart - Den nuværende KernelSU version %d er for lav til manageren for at fungere ordentligt. Opgrader til version %d eller højere! Gem Logfiler diff --git a/manager/app/src/main/res/values-de/strings.xml b/manager/app/src/main/res/values-de/strings.xml index 069a8813..4f5cf9f5 100644 --- a/manager/app/src/main/res/values-de/strings.xml +++ b/manager/app/src/main/res/values-de/strings.xml @@ -38,7 +38,7 @@ Aktualisieren der SELinux-Regeln schlug fehl für: %s Starten Neue Version %s verfügbar, tippen zum Aktualisieren. - Stopp erzwingen + Stopp erzwingen Neustarten Module: %d Manager-Version @@ -76,7 +76,6 @@ Soft-Reboot Möchtest du wirklich Modul %s deinstallieren? Deinstallation fehlgeschlagen: %s - Die aktuelle KernelSU-Version %d ist zu alt für diese Manager-Version. Bitte auf Version %d oder höher aktualisieren! Änderungsprotokoll Erfolgreich importiert In Zwischenablage exportieren @@ -127,7 +126,6 @@ Schreiben erfolgreich Schreiben fehlgeschlagen Wähle LKM: %s - Spärliches Bild minimieren Aktion Protokolle gespeichert diff --git a/manager/app/src/main/res/values-es/strings.xml b/manager/app/src/main/res/values-es/strings.xml index 474fd4c4..2eb4dedc 100644 --- a/manager/app/src/main/res/values-es/strings.xml +++ b/manager/app/src/main/res/values-es/strings.xml @@ -74,10 +74,9 @@ Iniciar descarga: %s La nueva versión %s está disponible, haga clic para actualizar. Iniciar - Forzar detención + Forzar detención Reiniciar Error al actualizar las reglas SELinux para: %s - La versión %d actual de KernelSU es demasiado baja para que el gestor funcione correctamente. Por favor, ¡actualice a la versión %d o superior! Registro de cambios Importado con éxito Exportar al portapapeles diff --git a/manager/app/src/main/res/values-et/strings.xml b/manager/app/src/main/res/values-et/strings.xml index 4885d74d..10d24f19 100644 --- a/manager/app/src/main/res/values-et/strings.xml +++ b/manager/app/src/main/res/values-et/strings.xml @@ -75,14 +75,13 @@ Võimekused Sobimatu malli ID SELinux kontekst - Praegune KernelSU versioon %d on liiga madal, haldur ei saa korrektselt töötada. Palun täienda versioonile %d või kõrgem! Domeen Käivita Sundpeata Reeglid Uuenda Mooduli allalaadimine: %s - Uus versioon %s on saadaval, klõpsa täiendamiseks. + Uus versioon %s on saadaval, klõpsa täiendamiseks. Taaskäivita Muudatuste logi Nimi diff --git a/manager/app/src/main/res/values-fil/strings.xml b/manager/app/src/main/res/values-fil/strings.xml index 5870ec35..5c13391d 100644 --- a/manager/app/src/main/res/values-fil/strings.xml +++ b/manager/app/src/main/res/values-fil/strings.xml @@ -44,14 +44,13 @@ Konteksto ng SELinux I-unmount ang mga modyul Nabigong i-update ang App Profile para sa %s - Ang kasalukuyang bersyon ng KernelSU %d ay masyadong mababa para gumana nang maayos ang manager. Mangyaring mag-upgrade sa bersyon %d o mas mataas! Ang pagpapagana sa opsyong ito ay magbibigay-daan sa KernelSU na ibalik ang anumang binagong file ng mga modyul para sa aplikasyon na ito. Mga Tuntunin Nagda-download ng modyul: %s Simulan ang pag-download: %s Bagong bersyon: Available ang %s, i-click upang i-download Ilunsad - Pilit na I-hinto + Pilit na I-hinto I-restart Nabigong i-update ang mga panuntunan ng SELinux para sa: %s Bersyon ng Manager diff --git a/manager/app/src/main/res/values-fr/strings.xml b/manager/app/src/main/res/values-fr/strings.xml index a76fd24e..886ce326 100644 --- a/manager/app/src/main/res/values-fr/strings.xml +++ b/manager/app/src/main/res/values-fr/strings.xml @@ -73,10 +73,9 @@ Lancer La nouvelle version %s est disponible, appuyez ici pour mettre à jour. Début du téléchargement de : %s - Forcer l\'arrêt + Forcer l\'arrêt Relancer l\'application Échec de la mise à jour des règles SELinux pour : %s - La version actuelle de KernelSU (%d) est trop ancienne pour que le gestionnaire fonctionne correctement. Veuillez passer à la version %d ou à une version supérieure ! Importation réussie Exporter vers le presse-papiers Impossible de trouver un modèle local à exporter ! diff --git a/manager/app/src/main/res/values-hi/strings.xml b/manager/app/src/main/res/values-hi/strings.xml index 86599bcf..7684a9ac 100644 --- a/manager/app/src/main/res/values-hi/strings.xml +++ b/manager/app/src/main/res/values-hi/strings.xml @@ -19,7 +19,7 @@ Individual %s मॉड्यूल चालू करने में विफल जबर्दस्ती बंद करें - EDL मोड में रिबूट करें + EDL मोड में रिबूट करें फिर से चालू करें क्षमताएं सुपरयूजर : %d @@ -33,7 +33,6 @@ डिफॉल्ट लॉन्च करें सेफ मोड - मैनेजर के ठीक से काम करने के लिए वर्तमान KernelSU वर्जन %d बहुत कम है। कृपया वर्जन %d या उच्चतर में अपग्रेड करें! रिकवरी में रिबूट करें सॉफ्ट रिबूट प्रोफाइल का नाम diff --git a/manager/app/src/main/res/values-hr/strings.xml b/manager/app/src/main/res/values-hr/strings.xml index b0a30ca9..a95c1f50 100644 --- a/manager/app/src/main/res/values-hr/strings.xml +++ b/manager/app/src/main/res/values-hr/strings.xml @@ -64,7 +64,6 @@ Grupe Sposobnosti SELinux kontekst - Trenutna KernelSU verzija %d je preniska da bi voditelj ispravno radio. Molimo vas da nadogradite na verziju %d ili noviju! Umount module po zadanom Globalna zadana vrijednost za \"Umount module\" u Profilima Aplikacije. Ako je omogućeno, uklonit će sve izmjene modula na sistemu za aplikacije koje nemaju postavljen Profil. Domena @@ -75,7 +74,7 @@ Započnite sa preuzimanjem: %s Nova verzija: %s je dostupna, kliknite da preuzmete Pokrenite - Prisilno Zaustavite + Prisilno Zaustavite Resetujte Spremi Zapise diff --git a/manager/app/src/main/res/values-hu/strings.xml b/manager/app/src/main/res/values-hu/strings.xml index e9472767..14250500 100644 --- a/manager/app/src/main/res/values-hu/strings.xml +++ b/manager/app/src/main/res/values-hu/strings.xml @@ -41,7 +41,7 @@ Modul letöltése: %s Letöltés indítása: %s Indítás - Kényszerített leállítás + Kényszerített leállítás újraindítás Kezdőlap Nincs telepítve @@ -76,7 +76,6 @@ A \"Modulok leválasztása\" globális alapértelmezett értéke az App Profile-ban. Ha engedélyezve van, eltávolít minden modulmódosítást a rendszerből azon alkalmazások esetében, amelyeknek nincs profilja beállítva. Elérhető az új, %s verzió, kattintson a frissítéshez. Nem sikerült frissíteni az SELinux szabályokat a következőhöz: %s - A jelenlegi KernelSU verzió %d túlságosan elavult a megfelelő működéshez. Kérjük frissítsen a %d verzióra vagy újabbra! Sikeresen importálva Exportálás a vágólapról Nem található helyi sablon az exportáláshoz! @@ -123,10 +122,8 @@ Művelet Közvetlen telepítés (Ajánlott) Az eszköze **KÉNYSZERÍTETTEN** a jelenleg inaktív helyről fog indulni újraindítás után!\nCsak az OTA befejezése után használja.\nFolytatja? - Átméretezi a sparse képfájlt, ahol a modul található, a tényleges méretére. Vegye figyelembe, hogy ez a modul rendellenes működését okozhatja, ezért kérjük, hogy csak akkor használja, ha szükséges (például biztonsági mentéshez). Állítsa vissza a gyári képfájlt (ha létezik biztonsági mentés). Általában OTA előtt használják. Ha a KernelSU-t szeretné eltávolítani, használja a végleges eltávolítás opciót. Frissítés ellenőrzése Automatikusan keressen frissítéseket az alkalmazás megnyitásakor Mentett naplók - Sparse képfájl minimalizálása diff --git a/manager/app/src/main/res/values-in/strings.xml b/manager/app/src/main/res/values-in/strings.xml index c1a5880d..afe50176 100644 --- a/manager/app/src/main/res/values-in/strings.xml +++ b/manager/app/src/main/res/values-in/strings.xml @@ -74,10 +74,9 @@ Mulai mengunduh: %s Tersedia versi terbaru %s, Klik untuk membarui. Jalankan - Paksa berhenti + Paksa berhenti Mulai ulang Gagal membarui aturan SELinux pada: %s - Versi KernelSU %d terlalu rendah agar manajer berfungsi normal. Harap membarui ke versi %d atau di atasnya! Catatan Perubahan Berhasil diimpor Ekspor ke papan klip diff --git a/manager/app/src/main/res/values-it/strings.xml b/manager/app/src/main/res/values-it/strings.xml index 64554b85..84da3092 100644 --- a/manager/app/src/main/res/values-it/strings.xml +++ b/manager/app/src/main/res/values-it/strings.xml @@ -70,13 +70,12 @@ Sto scaricando il modulo: %s Inizia a scaricare:%s Nuova versione: %s disponibile, tocca per aggiornare - Arresto forzato + Arresto forzato Riavvia Aggiornamento regole SELinux per %s fallito Attivando questa opzione permetterai a KernelSU di ripristinare ogni file modificato dai moduli per questa app. Dominio Il valore predefinito per \"Scollega moduli\" in App Profile. Se attivato, rimuoverà tutte le modifiche al sistema da parte dei moduli per le applicazioni che non hanno un profilo impostato. - La versione attualmente installata di KernelSU (%d) è troppo vecchia ed il gestore non può funzionare correttamente. Si prega di aggiornare alla versione %d o successiva! Registro aggiornamenti Crea modello Modifica modello diff --git a/manager/app/src/main/res/values-iw/strings.xml b/manager/app/src/main/res/values-iw/strings.xml index 146736cf..fb97a716 100644 --- a/manager/app/src/main/res/values-iw/strings.xml +++ b/manager/app/src/main/res/values-iw/strings.xml @@ -19,7 +19,7 @@ אישי הפעלת המודל נכשלה: %s עצירה בכח - הפעלה מחדש למצב EDL + הפעלה מחדש למצב EDL איתחול יכולת משתמשי על: %d @@ -33,7 +33,6 @@ ברירת מחדל להשיק מצב בטוח - גרסת KernelSU הנוכחית %d נמוכה מדי כדי שהמנהל יפעל כראוי. אנא שדרג לגרסה %d ומעלה! הפעלה מחדש לריקברי רך Reboot שם פרופיל diff --git a/manager/app/src/main/res/values-ja/strings.xml b/manager/app/src/main/res/values-ja/strings.xml index 47e1b5d6..f024370d 100644 --- a/manager/app/src/main/res/values-ja/strings.xml +++ b/manager/app/src/main/res/values-ja/strings.xml @@ -69,7 +69,7 @@ アップデート ダウンロードを開始: %s 起動 - 強制停止 + 強制停止 再起動 SELinux ルールの更新に失敗しました %s ケーパビリティ @@ -77,7 +77,6 @@ このオプションを有効にすると、KernelSU はこのアプリのモジュールによって変更されたファイルを復元できるようになります。 既定でモジュールのマウントを解除 アプリプロファイルの「モジュールのアンマウント」の共通のデフォルト値です。 有効にすると、プロファイルセットを持たないアプリのシステムに対するすべてのモジュールの変更が削除されます。 - 現在の KernelSU バージョン %d はマネージャーが適切に機能するには低すぎます。 バージョン %d 以降にアップグレードしてください! 変更履歴 インポート成功 クリップボードからエクスポート diff --git a/manager/app/src/main/res/values-kn/strings.xml b/manager/app/src/main/res/values-kn/strings.xml index d0b75694..d64d4e4d 100644 --- a/manager/app/src/main/res/values-kn/strings.xml +++ b/manager/app/src/main/res/values-kn/strings.xml @@ -26,9 +26,8 @@ ಮಾಡ್ಯೂಲ್‌ಗಳು: %d SELinux ಸಂದರ್ಭ ಡೀಫಾಲ್ಟ್ - ಲಾಂಚ್ + ಲಾಂಚ್ ಸುರಕ್ಷಿತ ಮೋಡ್ - ಪ್ರಸ್ತುತ KernelSU ಆವೃತ್ತಿ %d ಮ್ಯಾನೇಜರ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ತುಂಬಾ ಕಡಿಮೆಯಾಗಿದೆ. ದಯವಿಟ್ಟು ಆವೃತ್ತಿ %d ಅಥವಾ ಹೆಚ್ಚಿನದಕ್ಕೆ ಅಪ್‌ಗ್ರೇಡ್ ಮಾಡಿ! ಸಾಫ್ಟ್ ರೀಬೂಟ್ ಪ್ರೊಫೈಲ್ ಹೆಸರು KernelSU ಉಚಿತ ಮತ್ತು ಮುಕ್ತ ಮೂಲವಾಗಿದೆ ಮತ್ತು ಯಾವಾಗಲೂ ಇರುತ್ತದೆ. ಆದಾಗ್ಯೂ ನೀವು ದೇಣಿಗೆ ನೀಡುವ ಮೂಲಕ ನೀವು ಕಾಳಜಿ ವಹಿಸುತ್ತೀರಿ ಎಂದು ನಮಗೆ ತೋರಿಸಬಹುದು. diff --git a/manager/app/src/main/res/values-ko/strings.xml b/manager/app/src/main/res/values-ko/strings.xml index f70f276d..b67c858e 100644 --- a/manager/app/src/main/res/values-ko/strings.xml +++ b/manager/app/src/main/res/values-ko/strings.xml @@ -50,7 +50,7 @@ 지원이 필요합니다 KernelSU는 지금도, 앞으로도 항상 무료이며 오픈 소스로 유지됩니다. 기부를 통해 여러분의 관심을 보여주세요. https://kernelsu.org/guide/what-is-kernelsu.html - 앱 프로필 메뉴의 \"모듈 마운트 해제\" 설정에 대한 전역 기본값을 설정합니다. 활성화 시, 개별 프로필이 설정되지 않은 앱은 시스템에 대한 모듈의 모든 수정사항이 적용되지 않습니다. + 앱 프로필 메뉴의 \"모듈 마운트 해제\" 설정에 대한 전역 기본값을 설정합니다. 활성화 시, 개별 프로필이 설정되지 않은 앱은 시스템에 대한 모듈의 모든 수정사항이 적용되지 않습니다. 다시 시작 규칙 새 버전: %s이 사용 가능합니다, 여기를 눌러 업그레이드하세요. @@ -79,7 +79,6 @@ 로그 저장 업데이트 내역 WebUI 디버깅에 사용 가능, 필요할 때만 활성화해주세요. - 스파스 이미지 최소화 플래시 중 선택된 LKM: %s %1$s 파티션 이미지 권장됨 @@ -87,8 +86,6 @@ 다음 완전히, 그리고 영구히 KernelSU (루트 및 모든 모듈)를 삭제합니다. WebView 디버깅 활성화 - 현재 KernelSU 버전 %d는 매니저가 올바르게 작동하기에 너무 낮습니다. 버전 %d 이상으로 업그레이드해 주세요! - 모듈이 위치한 스파스 이미지의 크기를 실제 크기로 조정합니다. 모듈이 비정상적으로 작동할 수 있으니, 필요할 때만 (예: 백업) 사용해 주세요. 동작 임시적 삭제 업데이트 내역 가져오기 실패: %s diff --git a/manager/app/src/main/res/values-lt/strings.xml b/manager/app/src/main/res/values-lt/strings.xml index 1862566a..8a071fc4 100644 --- a/manager/app/src/main/res/values-lt/strings.xml +++ b/manager/app/src/main/res/values-lt/strings.xml @@ -51,7 +51,7 @@ Pradedamas atsisiuntimas: %s Nauja versija: %s pasiekiama, spustelėkite norėdami atsinaujinti Paleisti - Priversti sustoti + Priversti sustoti Perkrauti Nepavyko atnaujinti SELinux taisyklių: %s Namai @@ -77,6 +77,5 @@ Nepavyko atnaujinti programos profilio %s Visuotinė numatytoji „Modulių atjungimo“ reikšmė programų profiliuose. Jei įjungta, ji pašalins visus sistemos modulio pakeitimus programoms, kurios neturi profilio. Keitimų žurnalas - Ši KernelSU versija %d yra per žema, kad šis vadybininkas galėtų tinkamai funkcionuoti. Prašome atsinaujinti į versiją %d ar aukščiau! Saglabāt Žurnālus diff --git a/manager/app/src/main/res/values-lv/strings.xml b/manager/app/src/main/res/values-lv/strings.xml index c63e97fa..55dec619 100644 --- a/manager/app/src/main/res/values-lv/strings.xml +++ b/manager/app/src/main/res/values-lv/strings.xml @@ -70,7 +70,7 @@ Sākt lejupielādi: %s Jaunā versija: %s ir pieejama, noklikšķiniet, lai atjauninātu Palaist - Piespiedu apstāšana + Piespiedu apstāšana Restartēt aplikāciju Izmaiņu žurnāls Lietotnes profila veidne @@ -98,7 +98,6 @@ KernelSU ir un vienmēr būs bezmaksas un atvērtā koda. Tomēr jūs varat parādīt mums, ka jums rūp, veicot ziedojumu. Grupas Globāli - Pašreizējā KernelSU versija %d ir pārāk zema, lai pārvaldnieks darbotos pareizi. Lūdzu, atjauniniet uz versiju %d vai jaunāku! Iespējot WebView atkļūdošanu Ieteicams %1$s nodalījuma attēls Nākamais diff --git a/manager/app/src/main/res/values-nl/strings.xml b/manager/app/src/main/res/values-nl/strings.xml index 77818dc7..ac9fdc69 100644 --- a/manager/app/src/main/res/values-nl/strings.xml +++ b/manager/app/src/main/res/values-nl/strings.xml @@ -72,11 +72,10 @@ Downloaden van module: %s Nieuwe versie %s is beschikbaar,klik om te upgraden. Start - Forceer stop + Forceer stop Herstart Begin met downloaden: %s Kan SELinux-regels niet bijwerken voor: %s - De huidige KernelSU-versie %d is te laag voor de manager om goed te werken. Upgrade naar versie %d of hoger! wijzigings logboek App-profiel Sjabloon Maken sjabloon diff --git a/manager/app/src/main/res/values-pl/strings.xml b/manager/app/src/main/res/values-pl/strings.xml index 1d34d64b..33cb6bd3 100644 --- a/manager/app/src/main/res/values-pl/strings.xml +++ b/manager/app/src/main/res/values-pl/strings.xml @@ -75,10 +75,9 @@ Rozpocznij pobieranie: %s Nowa wersja %s jest dostępna. Kliknij, aby zaktualizować. Uruchom - Wymuś zatrzymanie + Wymuś zatrzymanie Restartuj Nie udało się zaktualizować reguł SELinux dla %s - Obecna wersja KernelSU %d jest zbyt stara, aby menedżer działał poprawnie. Prosimy o aktualizację do wersji %d lub nowszej! Dziennik zmian Włącz debugowanie WebView Może być użyte do debugowania WebUI. Włącz tylko w razie potrzeby. diff --git a/manager/app/src/main/res/values-pt-rBR/strings.xml b/manager/app/src/main/res/values-pt-rBR/strings.xml index 3fa0cdb4..906276d8 100644 --- a/manager/app/src/main/res/values-pt-rBR/strings.xml +++ b/manager/app/src/main/res/values-pt-rBR/strings.xml @@ -74,10 +74,9 @@ Começando a baixar %s Nova versão %s está disponível, clique para atualizar. Iniciar - Forçar parada + Forçar parada Reiniciar Falha ao atualizar as regras do SELinux para %s - A versão atual do KernelSU %d é muito baixa para o gerenciador funcionar corretamente. Por favor, atualize para a versão %d ou superior! Registro de alterações Importado com sucesso Exportar para a área de transferência diff --git a/manager/app/src/main/res/values-pt/strings.xml b/manager/app/src/main/res/values-pt/strings.xml index 2f0e84ea..5f6436f6 100644 --- a/manager/app/src/main/res/values-pt/strings.xml +++ b/manager/app/src/main/res/values-pt/strings.xml @@ -71,11 +71,10 @@ Iniciar o download: %s Baixando módulo: %s Falha ao atualizar as regras do SELinux para: %s - https://kernelsu.org/guide/what-is-kernelsu.html + https://kernelsu.org/guide/what-is-kernelsu.html Reiniciar Lançar Forçar parada Nova versão: %s está disponível, clique para baixar - A versão atual do KernelSU %d é muito baixa para o gerenciador funcionar corretamente. Atualize para a versão %d ou superior! Salvar Registros diff --git a/manager/app/src/main/res/values-ro/strings.xml b/manager/app/src/main/res/values-ro/strings.xml index 490aa8fa..0332ea3d 100644 --- a/manager/app/src/main/res/values-ro/strings.xml +++ b/manager/app/src/main/res/values-ro/strings.xml @@ -74,9 +74,8 @@ Versiune nouă: %s este disponibilă, clic pentru a actualiza Nu s-au reușit actualizările regulilor SELinux pentru: %s Lansare - Oprire forțată + Oprire forțată Repornește - Versiunea actuală a KernelSU %d este prea mică pentru ca managerul să funcționeze corect. Actualizează la versiunea %d sau o versiune superioară! Jurnalul modificărilor Importat cu succes Export în clipboard diff --git a/manager/app/src/main/res/values-ru/strings.xml b/manager/app/src/main/res/values-ru/strings.xml index 7fa7f996..739a949b 100644 --- a/manager/app/src/main/res/values-ru/strings.xml +++ b/manager/app/src/main/res/values-ru/strings.xml @@ -78,9 +78,8 @@ Новая версия: %s доступна, нажмите чтобы скачать. Остановить принудительно Не удалось обновить правила SELinux для %s - Запустить + Запустить Перезапустить - Текущая версия KernelSU %d слишком низкая для правильной работы менеджера. Пожалуйста, обновите до версии %d или выше! Список изменений Успешный импорт Экспортировать в буфер обмена diff --git a/manager/app/src/main/res/values-sl/strings.xml b/manager/app/src/main/res/values-sl/strings.xml index 4aa0bb02..b74e0fe7 100644 --- a/manager/app/src/main/res/values-sl/strings.xml +++ b/manager/app/src/main/res/values-sl/strings.xml @@ -41,7 +41,7 @@ Domena Posodobitev Nalaganje modula: %s - Zaženi + Zaženi Ponovni zagon Dnevnik sprememb Predloga za aplikacijski profil @@ -68,7 +68,6 @@ SELinux kontekst KernelSU je, in bo vedno brezplačen in odprtokoden. Kljub temu, nam lahko z donacijo pokažete, da vam je mar. Napaka pri posodobitvi aplikacijskega profila za %s - Za pravilno funkionalnost upravitelja je trenutna KernelSU verzija %d prenizka. Potrebna je nadgradnja na verzijo %d ali več! Globalno privzeta vrednost za \"Izvrzi module\" v aplikacijskih profilih. Če je omogočena, bo to odstranilo vse sistemske modifikacije modulov za aplikacije, ki nimajo nastavljenega profila. Omogočanje te opcije bo dovolilo KernelSU, da obnovi vse zaradi modulov spremenjene datoteke za to aplikacijo. Prisilna ustavitev diff --git a/manager/app/src/main/res/values-th/strings.xml b/manager/app/src/main/res/values-th/strings.xml index 0b14b641..afa495d8 100644 --- a/manager/app/src/main/res/values-th/strings.xml +++ b/manager/app/src/main/res/values-th/strings.xml @@ -71,12 +71,11 @@ กำลังดาวน์โหลดโมดูล: %s กำลังเริ่มดาวน์โหลด: %s เวอร์ชันใหม่: %s พร้อมใช้งาน คลิกเพื่ออัปเกรด - บังคับหยุด + บังคับหยุด รีสตาร์ท หากเปิดใช้งานค่าเริ่มต้นโดยทั่วไปสำหรับ \"Umount โมดูล\" ในโปรไฟล์แอป จะเป็นการลบการแก้ไขโมดูลทั้งหมดในระบบสำหรับแอปพลิเคชันที่ไม่มีการตั้งค่าโปรไฟล์ เปิด ไม่สามารถอัปเดตกฎ SElinux สำหรับ %s - KernelSU เวอร์ชัน %d ต่ำเกินไป ทำให้ตัวจัดการไม่สามารถทำงานได้อย่างถูกต้อง โปรดอัปเกรดเป็นเวอร์ชัน %d หรือสูงกว่า! บันทึกการเปลี่ยนแปลง นำเข้าเสร็จสิ้น ส่งออกไปยังคลิปบอร์ด diff --git a/manager/app/src/main/res/values-tr/strings.xml b/manager/app/src/main/res/values-tr/strings.xml index 819ff687..a0a4e471 100644 --- a/manager/app/src/main/res/values-tr/strings.xml +++ b/manager/app/src/main/res/values-tr/strings.xml @@ -65,7 +65,6 @@ SELinux içeriği Modüllerin bağlantısını kes %s için uygulama profili güncellenemedi. - Mevcut KernelSU sürümü %d, yöneticinin düzgün çalışabilmesi için çok düşük. Lütfen %d sürümüne veya daha yüksek bir sürüme güncelleyin! Varsayılan olarak modüllerin bağlantısını kes Uygulama profilindeki \"Modüllerin bağlantısını kes\" seçeneği için varsayılan değer. Etkinleştirilirse, profil ayarı yapılmamış uygulamalar için modüllerin sistemde yaptığı tüm değişiklikler kaldırılacaktır. Bu seçeneği etkinleştirmek, KernelSU\'nun bu uygulama için modüller tarafından değiştirilen dosyaları geri yüklemesine izin verir. @@ -76,7 +75,7 @@ İndirme başladı: %s Yeni sürüm: %s var, güncellemek için tıklayın. Uygulamayı başlat - Uygulamayı durmaya zorla + Uygulamayı durmaya zorla Uygulamayı yeniden başlat %s için SELinux kuralları güncellenemedi. Değişiklik geçmişi diff --git a/manager/app/src/main/res/values-uk/strings.xml b/manager/app/src/main/res/values-uk/strings.xml index 4b0b19b5..a318f474 100644 --- a/manager/app/src/main/res/values-uk/strings.xml +++ b/manager/app/src/main/res/values-uk/strings.xml @@ -73,12 +73,11 @@ Завантаження модуля: %s Початок завантаження: %s Запустити - Примусово зупинити + Примусово зупинити Перезапустити Нова версія: %s доступна, натисніть, щоб завантажити Не вдалося оновити правила SELinux для: %s Журнал змін - Поточна версія KernelSU %d занадто низька, щоб менеджер міг працювати належним чином. Будь ласка, оновіть до версії %d або вище! Успішно імпортовано Експортувати в буфер обміну Неможливо знайти локальні шаблони для експорту! diff --git a/manager/app/src/main/res/values-zh-rCN/strings.xml b/manager/app/src/main/res/values-zh-rCN/strings.xml index edfcde93..2d911da1 100644 --- a/manager/app/src/main/res/values-zh-rCN/strings.xml +++ b/manager/app/src/main/res/values-zh-rCN/strings.xml @@ -70,7 +70,7 @@ SELinux 卸载模块 为 %s 更新 App Profile 失败 - 当前 KernelSU 版本 %d 过低,管理器无法正常工作,请将内核 KernelSU 版本升级至 %d 或以上! + 当前 KernelSU 版本 %d 过低,管理器无法正常工作,请将内核 KernelSU 版本升级至 %d 或以上! 默认卸载模块 App Profile 中“卸载模块”的全局默认值,如果启用,将会为没有设置 Profile 的应用移除所有模块针对系统的修改。 隐藏 Kprobe 钩子 @@ -83,7 +83,7 @@ 开始下载:%s 发现新版本:%s,点击升级。 启动 - 强制停止 + 强制停止 重新启动 为:%s 更新翻译失败 更新日志 @@ -192,4 +192,16 @@ 跟随系统 浅色 深色 + 手动钩子 + 动态颜色 + 使用系统主题的动态颜色 + 选择主题色 + 黄色 + 蓝色 + 绿色 + 紫色 + 橙色 + 粉色 + 高级灰 + 象牙白 \ No newline at end of file diff --git a/manager/app/src/main/res/values-zh-rHK/strings.xml b/manager/app/src/main/res/values-zh-rHK/strings.xml index a29657b4..948362a6 100644 --- a/manager/app/src/main/res/values-zh-rHK/strings.xml +++ b/manager/app/src/main/res/values-zh-rHK/strings.xml @@ -74,7 +74,7 @@ 開始下載:%s 新版本:%s 已可供使用,按一下以升級 啟動 - 強制停止 + 強制停止 重新啟動 無法為 %s 更新 SELinux 規則 變更記錄 diff --git a/manager/app/src/main/res/values-zh-rTW/strings.xml b/manager/app/src/main/res/values-zh-rTW/strings.xml index fe4c5853..b210f758 100644 --- a/manager/app/src/main/res/values-zh-rTW/strings.xml +++ b/manager/app/src/main/res/values-zh-rTW/strings.xml @@ -60,7 +60,7 @@ 自訂 權限 規則 - 正在下載模組:%s + 正在下載模組:%s 重新執行 範本 Profile 名稱 diff --git a/manager/app/src/main/res/values/strings.xml b/manager/app/src/main/res/values/strings.xml index 5abd8585..48330ace 100644 --- a/manager/app/src/main/res/values/strings.xml +++ b/manager/app/src/main/res/values/strings.xml @@ -72,7 +72,7 @@ SELinux context Umount modules Failed to update App Profile for %s - The current KernelSU version %d is too low for the manager to work properly. Please upgrade to version %d or higher! + The current KernelSU version %d is too low for the manager to work properly. Please upgrade to version %d or higher! Umount modules by default The global default value for \"Umount modules\" in App Profile. If enabled, it will remove all module modifications to the system for apps that don\'t have a profile set. Cacher les hooks kprobe @@ -85,7 +85,7 @@ Start downloading: %s New version %s is available, click to upgrade. Launch - Force stop + Force stop Restart Failed to update SELinux rules for %s Changelog @@ -194,4 +194,16 @@ follow-up system light color dark colored + Manual Hook + Dynamic colours + Dynamic colours using system themes + Choose a theme colour + yellow + blue + green + purple + orange + pink + gray + ivory