From 9e8f8d00473df54ee475257ea285a51cef38c2bb Mon Sep 17 00:00:00 2001 From: deniscerri <64997243+deniscerri@users.noreply.github.com> Date: Sun, 8 Feb 2026 13:36:58 +0100 Subject: [PATCH] delete info jsons after yt-dlp update --- .../main/java/com/deniscerri/ytdl/core/RuntimeManager.kt | 4 +--- .../ui/more/settings/updating/UpdateSettingsFragment.kt | 4 ++++ app/src/main/java/com/deniscerri/ytdl/util/FileUtil.kt | 4 ++++ .../com/deniscerri/ytdl/util/extractors/ytdlp/YTDLPUtil.kt | 6 +++--- .../main/java/com/deniscerri/ytdl/work/DownloadWorker.kt | 2 +- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/deniscerri/ytdl/core/RuntimeManager.kt b/app/src/main/java/com/deniscerri/ytdl/core/RuntimeManager.kt index a3b525d7..57ef88f5 100644 --- a/app/src/main/java/com/deniscerri/ytdl/core/RuntimeManager.kt +++ b/app/src/main/java/com/deniscerri/ytdl/core/RuntimeManager.kt @@ -199,9 +199,7 @@ object RuntimeManager { } if (request.buildCommand().contains("libaria2c.so")) { - request - .addOption("--external-downloader-args", "aria2c:--summary-interval=1") - .addOption( + request.addOption( "--external-downloader-args", "aria2c:--ca-certificate=$ENV_SSL_CERT_FILE" ) diff --git a/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/updating/UpdateSettingsFragment.kt b/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/updating/UpdateSettingsFragment.kt index 60bb85bf..72290a78 100644 --- a/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/updating/UpdateSettingsFragment.kt +++ b/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/updating/UpdateSettingsFragment.kt @@ -14,12 +14,14 @@ import com.deniscerri.ytdl.R import com.deniscerri.ytdl.database.viewmodel.SettingsViewModel import com.deniscerri.ytdl.database.viewmodel.YTDLPViewModel import com.deniscerri.ytdl.ui.more.settings.BaseSettingsFragment +import com.deniscerri.ytdl.util.FileUtil import com.deniscerri.ytdl.util.UiUtil import com.deniscerri.ytdl.util.UpdateUtil import com.google.android.material.snackbar.Snackbar import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext +import java.io.File class UpdateSettingsFragment : BaseSettingsFragment() { @@ -155,6 +157,8 @@ class UpdateSettingsFragment : BaseSettingsFragment() { UpdateUtil.YTDLPUpdateStatus.DONE -> { Snackbar.make(requireView(), res.message, Snackbar.LENGTH_LONG).show() setYTDLPVersion() + val infoJsonPath = FileUtil.getInfoJsonPath(requireContext()) + File(infoJsonPath).deleteRecursively() } UpdateUtil.YTDLPUpdateStatus.ALREADY_UP_TO_DATE -> Snackbar.make(requireView(), requireContext().getString(R.string.you_are_in_latest_version), diff --git a/app/src/main/java/com/deniscerri/ytdl/util/FileUtil.kt b/app/src/main/java/com/deniscerri/ytdl/util/FileUtil.kt index a5a18cd2..acee8c92 100644 --- a/app/src/main/java/com/deniscerri/ytdl/util/FileUtil.kt +++ b/app/src/main/java/com/deniscerri/ytdl/util/FileUtil.kt @@ -325,6 +325,10 @@ object FileUtil { } } + fun getInfoJsonPath(context: Context) : String { + return "${getCachePath(context)}infojsons" + } + fun deleteConfigFiles(request: YTDLRequest) { runCatching { request.getArguments("--config")?.forEach { diff --git a/app/src/main/java/com/deniscerri/ytdl/util/extractors/ytdlp/YTDLPUtil.kt b/app/src/main/java/com/deniscerri/ytdl/util/extractors/ytdlp/YTDLPUtil.kt index 74f8a011..34d93317 100644 --- a/app/src/main/java/com/deniscerri/ytdl/util/extractors/ytdlp/YTDLPUtil.kt +++ b/app/src/main/java/com/deniscerri/ytdl/util/extractors/ytdlp/YTDLPUtil.kt @@ -609,7 +609,7 @@ class YTDLPUtil(private val context: Context, private val commandTemplateDao: Co @OptIn(ExperimentalStdlibApi::class) private fun YTDLRequest.addWriteInfoJson(url: String) { - val cachePath = "${FileUtil.getCachePath(context)}infojsons" + val cachePath = FileUtil.getInfoJsonPath(context) File(cachePath).mkdirs() var id = url @@ -632,7 +632,7 @@ class YTDLPUtil(private val context: Context, private val commandTemplateDao: Co @OptIn(ExperimentalStdlibApi::class) private fun getInfoJsonFile(url: String): File? { - val cachePath = "${FileUtil.getCachePath(context)}infojsons" + val cachePath = FileUtil.getInfoJsonPath(context) var id = url if (url.isYoutubeURL()) { @@ -885,7 +885,7 @@ class YTDLPUtil(private val context: Context, private val commandTemplateDao: Co if (aria2) { ytDlRequest.addOption("--downloader", "libaria2c.so") //request.addOption("--external-downloader-args", "aria2c:\"--summary-interval=1\"") - ytDlRequest.addOption("--no-check-certificates") + //ytDlRequest.addOption("--no-check-certificates") //request.addOption("--external-downloader-args", "aria2c:\"--check-certificate=false\"") } diff --git a/app/src/main/java/com/deniscerri/ytdl/work/DownloadWorker.kt b/app/src/main/java/com/deniscerri/ytdl/work/DownloadWorker.kt index 4117459a..caf2fd9d 100644 --- a/app/src/main/java/com/deniscerri/ytdl/work/DownloadWorker.kt +++ b/app/src/main/java/com/deniscerri/ytdl/work/DownloadWorker.kt @@ -382,7 +382,7 @@ class DownloadWorker( if (this@DownloadWorker.isStopped) return@onFailure if (it is RuntimeManager.CanceledException) return@onFailure if (it.message?.contains("JSONDecodeError") == true) { - val cachePath = "${FileUtil.getCachePath(context)}infojsons" + val cachePath = FileUtil.getInfoJsonPath(context) val infoJsonName = MessageDigest.getInstance("MD5").digest(downloadItem.url.toByteArray()).toHexString() FileUtil.deleteFile("${cachePath}/${infoJsonName}.info.json") }