Remove memory limit settings

This commit is contained in:
世界
2026-02-26 13:55:19 +08:00
parent d897054612
commit 492f8cba58
9 changed files with 0 additions and 79 deletions

View File

@@ -131,7 +131,6 @@ class BoxService(private val service: Service, private val platformInterface: Pl
}
DefaultNetworkMonitor.start()
Libbox.setMemoryLimit(!Settings.disableMemoryLimit)
try {
commandServer.startOrReloadService(

View File

@@ -16,23 +16,18 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.outlined.BatteryChargingFull
import androidx.compose.material.icons.outlined.Memory
import androidx.compose.material3.Button
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.ListItem
import androidx.compose.material3.ListItemDefaults
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.Switch
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable
@@ -40,12 +35,9 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
@@ -53,13 +45,8 @@ import androidx.compose.ui.unit.dp
import androidx.navigation.NavController
import io.nekohasekai.sfa.R
import io.nekohasekai.sfa.bg.ServiceConnection
import io.nekohasekai.sfa.compose.base.GlobalEventBus
import io.nekohasekai.sfa.compose.base.UiEvent
import io.nekohasekai.sfa.compose.topbar.OverrideTopBar
import io.nekohasekai.sfa.database.Settings
import io.nekohasekai.sfa.ktx.launchCustomTab
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
@OptIn(ExperimentalMaterial3Api::class)
@Composable
@@ -79,11 +66,8 @@ fun ServiceSettingsScreen(navController: NavController, serviceConnection: Servi
}
val context = LocalContext.current
val scope = rememberCoroutineScope()
// Check battery optimization status
var isBatteryOptimizationIgnored by remember { mutableStateOf(false) }
var ignoreMemoryLimit by remember { mutableStateOf(Settings.disableMemoryLimit) }
// Activity result launcher for battery optimization permission
val requestBatteryOptimizationLauncher =
rememberLauncherForActivityResult(
@@ -187,56 +171,6 @@ fun ServiceSettingsScreen(navController: NavController, serviceConnection: Servi
}
}
// Options Section
Card(
modifier =
Modifier
.fillMaxWidth()
.padding(horizontal = 16.dp),
colors =
CardDefaults.cardColors(
containerColor = MaterialTheme.colorScheme.surfaceContainer,
),
) {
ListItem(
headlineContent = {
Text(
stringResource(R.string.ignore_memory_limit),
style = MaterialTheme.typography.bodyLarge,
)
},
supportingContent = {
Text(
stringResource(R.string.ignore_memory_limit_description),
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.onSurfaceVariant,
modifier = Modifier.padding(top = 4.dp),
)
},
leadingContent = {
Icon(
imageVector = Icons.Outlined.Memory,
contentDescription = null,
tint = MaterialTheme.colorScheme.primary,
)
},
trailingContent = {
Switch(checked = ignoreMemoryLimit, onCheckedChange = { checked ->
ignoreMemoryLimit = checked
scope.launch(Dispatchers.IO) {
Settings.disableMemoryLimit = checked
GlobalEventBus.tryEmit(UiEvent.RestartToTakeEffect)
}
})
},
modifier = Modifier.clip(RoundedCornerShape(12.dp)),
colors =
ListItemDefaults.colors(
containerColor = Color.Transparent,
),
)
}
Spacer(modifier = Modifier.height(16.dp))
}
}

View File

@@ -9,7 +9,6 @@ object SettingsKey {
const val SILENT_INSTALL_ENABLED = "silent_install_enabled"
const val SILENT_INSTALL_METHOD = "silent_install_method"
const val AUTO_UPDATE_ENABLED = "auto_update_enabled"
const val DISABLE_MEMORY_LIMIT = "disable_memory_limit"
const val DYNAMIC_NOTIFICATION = "dynamic_notification"
const val DISABLE_DEPRECATED_WARNINGS = "disable_deprecated_warnings"

View File

@@ -63,7 +63,6 @@ object Settings {
}
}
var autoUpdateEnabled by dataStore.boolean(SettingsKey.AUTO_UPDATE_ENABLED) { false }
var disableMemoryLimit by dataStore.boolean(SettingsKey.DISABLE_MEMORY_LIMIT)
var dynamicNotification by dataStore.boolean(SettingsKey.DYNAMIC_NOTIFICATION) { true }
var disableDeprecatedWarnings by dataStore.boolean(SettingsKey.DISABLE_DEPRECATED_WARNINGS) { false }

View File

@@ -199,8 +199,6 @@
<string name="sponsor">حامی مالی</string>
<string name="working_directory">پوشه کاری</string>
<string name="disable_deprecated_warnings">غیرفعال‌کردن هشدارهای منسوخ</string>
<string name="ignore_memory_limit">نادیده گرفتن محدودیت حافظه</string>
<string name="ignore_memory_limit_description">محدودیت حافظه روی sing-box اعمال نشود.</string>
<string name="notification_settings">اعلان‌ها</string>
<string name="enable_notification">فعال‌کردن اعلان</string>
<string name="dynamic_notification">نمایش سرعت بلادرنگ در اعلان</string>

View File

@@ -199,8 +199,6 @@
<string name="sponsor">Поддержать</string>
<string name="working_directory">Рабочая директория</string>
<string name="disable_deprecated_warnings">Отключить предупреждения об устаревании</string>
<string name="ignore_memory_limit">Игнорировать ограничение памяти</string>
<string name="ignore_memory_limit_description">Не применять ограничения по памяти для sing-box.</string>
<string name="notification_settings">Уведомления</string>
<string name="enable_notification">Включить уведомления</string>
<string name="dynamic_notification">Отображать скорость в реальном времени в уведомлении</string>

View File

@@ -199,8 +199,6 @@
<string name="sponsor">赞助</string>
<string name="working_directory">工作目录</string>
<string name="disable_deprecated_warnings">禁用弃用警告</string>
<string name="ignore_memory_limit">忽略内存限制</string>
<string name="ignore_memory_limit_description">不对 sing-box 强制执行内存限制。</string>
<string name="notification_settings">通知</string>
<string name="enable_notification">启用通知</string>
<string name="dynamic_notification">在通知中显示实时网速</string>

View File

@@ -199,8 +199,6 @@
<string name="sponsor">贊助</string>
<string name="working_directory">工作目錄</string>
<string name="disable_deprecated_warnings">停用過時警告</string>
<string name="ignore_memory_limit">忽略記憶體限制</string>
<string name="ignore_memory_limit_description">不對 sing-box 強制執行記憶體限制。</string>
<string name="notification_settings">通知</string>
<string name="enable_notification">啟用通知</string>
<string name="dynamic_notification">在通知中顯示即時網速</string>

View File

@@ -199,8 +199,6 @@
<string name="sponsor">Sponsor</string>
<string name="working_directory">Working Directory</string>
<string name="disable_deprecated_warnings">Disable Deprecated Warnings</string>
<string name="ignore_memory_limit">Ignore Memory Limit</string>
<string name="ignore_memory_limit_description">Do not enforce memory limits on sing-box.</string>
<string name="notification_settings">Notification</string>
<string name="enable_notification">Enable Notification</string>
<string name="dynamic_notification">Display realtime speed in notification</string>