diff --git a/app/src/main/kotlin/net/jeena/pacer/MainActivity.kt b/app/src/main/kotlin/net/jeena/pacer/MainActivity.kt index fab4874..a03095a 100644 --- a/app/src/main/kotlin/net/jeena/pacer/MainActivity.kt +++ b/app/src/main/kotlin/net/jeena/pacer/MainActivity.kt @@ -1,6 +1,10 @@ package net.jeena.pacer +import android.content.Intent +import android.net.Uri import android.os.Bundle +import android.os.PowerManager +import android.provider.Settings import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.enableEdgeToEdge @@ -18,6 +22,7 @@ class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + requestBatteryOptimizationExemption() enableEdgeToEdge() setContent { PacerTheme { @@ -30,4 +35,15 @@ class MainActivity : ComponentActivity() { } } } + + private fun requestBatteryOptimizationExemption() { + val pm = getSystemService(PowerManager::class.java) + if (!pm.isIgnoringBatteryOptimizations(packageName)) { + startActivity( + Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS).apply { + data = Uri.parse("package:$packageName") + } + ) + } + } }