Clean up old PDF files at startup

This commit is contained in:
Pierre-Yves Nicolas
2025-07-09 18:13:13 +02:00
parent efef66217a
commit 50a123d155
3 changed files with 36 additions and 4 deletions

View File

@@ -28,3 +28,10 @@ fun getAvailableFilename(desiredFile: File): File {
}
return file
}
fun cleanUpOldFiles(dir: File, thresholdInMillis: Int) {
val now = System.currentTimeMillis()
dir.listFiles { file -> now - file.lastModified() > thresholdInMillis }
?.forEach { file -> file.delete() }
}

View File

@@ -32,6 +32,7 @@ import androidx.core.content.FileProvider
import androidx.core.net.toFile
import androidx.core.net.toUri
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.lifecycle.lifecycleScope
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
@@ -52,6 +53,9 @@ class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
initLibraries()
lifecycleScope.launch(Dispatchers.IO) {
cleanUpOldFiles(File(cacheDir, "pdfs"), 1000 * 3600)
}
val viewModel: MainViewModel by viewModels { MainViewModel.getFactory(this) }
enableEdgeToEdge()
setContent {