From 3fd452dd538282131eca0e2a3ddbd8cc18b73678 Mon Sep 17 00:00:00 2001 From: Nicholas Wallace Date: Sun, 2 Nov 2025 17:53:11 -0700 Subject: [PATCH] Change to coroutine scope --- .../audiobookshelf/app/managers/DownloadItemManager.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/android/app/src/main/java/com/audiobookshelf/app/managers/DownloadItemManager.kt b/android/app/src/main/java/com/audiobookshelf/app/managers/DownloadItemManager.kt index 4abda3ed..a3c3493f 100644 --- a/android/app/src/main/java/com/audiobookshelf/app/managers/DownloadItemManager.kt +++ b/android/app/src/main/java/com/audiobookshelf/app/managers/DownloadItemManager.kt @@ -22,8 +22,8 @@ import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper import com.getcapacitor.JSObject import java.io.File import java.util.* +import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.delay import kotlinx.coroutines.launch @@ -171,11 +171,13 @@ class DownloadItemManager( currentDownloadItemParts.add(downloadItemPart) } + private val coroutineScope = CoroutineScope(Dispatchers.IO) + /** Starts watching the downloads. */ private fun startWatchingDownloads() { if (isDownloading) return // Already watching - GlobalScope.launch(Dispatchers.IO) { + coroutineScope.launch(Dispatchers.IO) { Log.d(tag, "Starting watching downloads") isDownloading = true @@ -285,7 +287,7 @@ class DownloadItemManager( if (downloadItem.isDownloadFinished) { Log.i(tag, "Download Item finished ${downloadItem.media.metadata.title}") - GlobalScope.launch(Dispatchers.IO) { + coroutineScope.launch(Dispatchers.IO) { folderScanner.scanDownloadItem(downloadItem) { downloadItemScanResult -> Log.d( tag,