diff --git a/app/build.gradle b/app/build.gradle index 1a0d6ed6..ef2d5d3b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -40,8 +40,8 @@ android { //Some Os's Don't give Access to Music Dir , In API 29 if we Target 30 //noinspection OldTargetApi targetSdkVersion 29 - versionCode 12 - versionName "2.0" + versionCode 13 + versionName "2.0.1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/shabinder/spotiflyer/providers/BaseProvider.kt b/app/src/main/java/com/shabinder/spotiflyer/providers/BaseProvider.kt index 06e713fc..1478df5c 100644 --- a/app/src/main/java/com/shabinder/spotiflyer/providers/BaseProvider.kt +++ b/app/src/main/java/com/shabinder/spotiflyer/providers/BaseProvider.kt @@ -38,13 +38,6 @@ abstract class BaseProvider { * */ abstract suspend fun query(fullLink:String):PlatformQueryResult? - protected fun queryActiveTracks(context:Context?) { - val serviceIntent = Intent(context, ForegroundService::class.java).apply { - action = "query" - } - context?.let { ContextCompat.startForegroundService(it, serviceIntent) } - } - protected val defaultDir get() = directories.defaultDir() protected val imageDir diff --git a/app/src/main/java/com/shabinder/spotiflyer/providers/GaanaProvider.kt b/app/src/main/java/com/shabinder/spotiflyer/providers/GaanaProvider.kt index 6afa0937..512db468 100644 --- a/app/src/main/java/com/shabinder/spotiflyer/providers/GaanaProvider.kt +++ b/app/src/main/java/com/shabinder/spotiflyer/providers/GaanaProvider.kt @@ -210,7 +210,6 @@ class GaanaProvider @Inject constructor( else -> {//TODO Handle Error} } } - queryActiveTracks(ctx) return result } } diff --git a/app/src/main/java/com/shabinder/spotiflyer/providers/SpotifyProvider.kt b/app/src/main/java/com/shabinder/spotiflyer/providers/SpotifyProvider.kt index 6cf8c90d..0aa14b61 100644 --- a/app/src/main/java/com/shabinder/spotiflyer/providers/SpotifyProvider.kt +++ b/app/src/main/java/com/shabinder/spotiflyer/providers/SpotifyProvider.kt @@ -228,7 +228,6 @@ class SpotifyProvider @Inject constructor( } } } - queryActiveTracks(ctx) return result } diff --git a/app/src/main/java/com/shabinder/spotiflyer/providers/YoutubeProvider.kt b/app/src/main/java/com/shabinder/spotiflyer/providers/YoutubeProvider.kt index a4bd0826..71f9d489 100644 --- a/app/src/main/java/com/shabinder/spotiflyer/providers/YoutubeProvider.kt +++ b/app/src/main/java/com/shabinder/spotiflyer/providers/YoutubeProvider.kt @@ -140,7 +140,6 @@ class YoutubeProvider @Inject constructor( ) ) } - queryActiveTracks(ctx) } catch (e: Exception) { e.printStackTrace() showDialog("An Error Occurred While Processing!") @@ -213,7 +212,6 @@ class YoutubeProvider @Inject constructor( ) ) } - queryActiveTracks(ctx) } catch (e: Exception) { e.printStackTrace() showDialog("An Error Occurred While Processing!") diff --git a/app/src/main/java/com/shabinder/spotiflyer/ui/tracklist/TrackList.kt b/app/src/main/java/com/shabinder/spotiflyer/ui/tracklist/TrackList.kt index b30ad015..694543ad 100644 --- a/app/src/main/java/com/shabinder/spotiflyer/ui/tracklist/TrackList.kt +++ b/app/src/main/java/com/shabinder/spotiflyer/ui/tracklist/TrackList.kt @@ -17,6 +17,7 @@ package com.shabinder.spotiflyer.ui.tracklist import android.content.Context +import android.content.Intent import androidx.compose.foundation.Image import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* @@ -34,6 +35,7 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp +import androidx.core.content.ContextCompat import androidx.core.net.toUri import androidx.navigation.NavController import com.shabinder.spotiflyer.R @@ -49,6 +51,7 @@ import com.shabinder.spotiflyer.ui.utils.calculateDominantColor import com.shabinder.spotiflyer.utils.downloadTracks import com.shabinder.spotiflyer.utils.sharedViewModel import com.shabinder.spotiflyer.utils.showDialog +import com.shabinder.spotiflyer.worker.ForegroundService import dev.chrisbanes.accompanist.coil.CoilImage import kotlinx.coroutines.* @@ -64,6 +67,7 @@ fun TrackList( youtubeProvider: YoutubeProvider, modifier: Modifier = Modifier ){ + val context = AmbientContext.current val coroutineScope = rememberCoroutineScope() var result by remember(fullLink) { mutableStateOf(null) } @@ -101,6 +105,7 @@ fun TrackList( } sharedViewModel.updateTrackList(result?.trackList ?: listOf()) + queryActiveTracks(context) result?.let{ val ctx = AmbientContext.current @@ -240,7 +245,12 @@ fun TrackCard( } } } - +private fun queryActiveTracks(context:Context?) { + val serviceIntent = Intent(context, ForegroundService::class.java).apply { + action = "query" + } + context?.let { ContextCompat.startForegroundService(it, serviceIntent) } +} suspend fun updateGradient(imageURL:String,ctx:Context){ calculateDominantColor(imageURL,ctx)?.color ?.let { sharedViewModel.updateGradientColor(it) } diff --git a/app/src/main/res/xml/app_update.xml b/app/src/main/res/xml/app_update.xml index d46d4c88..f16548f2 100644 --- a/app/src/main/res/xml/app_update.xml +++ b/app/src/main/res/xml/app_update.xml @@ -17,8 +17,8 @@ - 2.0 - 12 + 2.0.1 + 13 https://github.com/Shabinder/SpotiFlyer/releases/ \ No newline at end of file