Skip to content

Commit

Permalink
Merge pull request #60 from techmaved/develop
Browse files Browse the repository at this point in the history
release v0.1.4-beta
  • Loading branch information
techmaved authored May 25, 2024
2 parents 7bfc12f + 6bc797a commit 6f886d3
Show file tree
Hide file tree
Showing 11 changed files with 38 additions and 24 deletions.
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
package de.techmaved.mediabrowserforspotify.utils
package de.techmaved.mediabrowserforspotify.auth

import com.adamratzman.spotify.SpotifyClientApi
import com.adamratzman.spotify.SpotifyException
import com.adamratzman.spotify.auth.pkce.startSpotifyClientPkceLoginActivity
import de.techmaved.mediabrowserforspotify.activities.MainActivity
import de.techmaved.mediabrowserforspotify.auth.SpotifyPkceLoginActivityImpl
import de.techmaved.mediabrowserforspotify.models.Model
import kotlinx.coroutines.coroutineScope

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package de.techmaved.mediabrowserforspotify.utils
package de.techmaved.mediabrowserforspotify.models

object ChipType {
const val LIKED_SONGS = "Liked Songs"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package de.techmaved.mediabrowserforspotify.utils
package de.techmaved.mediabrowserforspotify.models


object MediaItemType {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.unit.dp
import de.techmaved.mediabrowserforspotify.utils.AppDatabase
import de.techmaved.mediabrowserforspotify.utils.database.AppDatabase
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Dialog
import de.techmaved.mediabrowserforspotify.utils.*
import de.techmaved.mediabrowserforspotify.utils.database.AppDatabase
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,12 @@ import com.google.common.collect.ImmutableList
import de.techmaved.mediabrowserforspotify.MyApplication
import de.techmaved.mediabrowserforspotify.entities.Browsable
import de.techmaved.mediabrowserforspotify.entities.BrowsableWithMediaItems
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.ALBUM_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.LIKED_SONG_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.PLAYLIST_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.ROOT_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.SHOW_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.ALBUM_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.LIKED_SONG_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.PLAYLIST_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.ROOT_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.SHOW_ID
import de.techmaved.mediabrowserforspotify.utils.database.AppDatabase
import kotlinx.coroutines.*
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.channelFlow
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,15 @@ package de.techmaved.mediabrowserforspotify.utils
import android.net.Uri
import com.adamratzman.spotify.SpotifyClientApi
import de.techmaved.mediabrowserforspotify.MyApplication
import de.techmaved.mediabrowserforspotify.auth.guardValidSpotifyApi
import de.techmaved.mediabrowserforspotify.entities.Browsable
import de.techmaved.mediabrowserforspotify.entities.MediaItem
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.ALBUM_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.LIKED_SONG_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.PLAYLIST_ID
import de.techmaved.mediabrowserforspotify.utils.MediaItemType.SHOW_ID
import de.techmaved.mediabrowserforspotify.models.ChipType
import de.techmaved.mediabrowserforspotify.models.MediaItemType.ALBUM_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.LIKED_SONG_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.PLAYLIST_ID
import de.techmaved.mediabrowserforspotify.models.MediaItemType.SHOW_ID
import de.techmaved.mediabrowserforspotify.utils.database.AppDatabase
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@ import com.spotify.android.appremote.api.ConnectionParams
import com.spotify.android.appremote.api.Connector
import com.spotify.android.appremote.api.SpotifyAppRemote
import de.techmaved.mediabrowserforspotify.BuildConfig
import de.techmaved.mediabrowserforspotify.auth.guardValidSpotifyApi
import de.techmaved.mediabrowserforspotify.utils.database.AppDatabase
import kotlinx.coroutines.*

class PlaybackService : MediaLibraryService() {
Expand Down Expand Up @@ -263,17 +265,23 @@ class PlaybackService : MediaLibraryService() {
val contextUri = ContextUri.invoke(currentMediaItem?.mediaMetadata?.artworkUri.toString())

audioManager?.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_MUTE, AudioManager.FLAG_SHOW_UI)
spotifyAppRemote?.playerApi?.play(currentMediaItem?.localConfiguration?.uri.toString())

spotifyAppRemote?.playerApi?.playerState?.setResultCallback {
if (it.track != null) {
CoroutineScope(Dispatchers.IO).launch {
guardValidSpotifyApi { api: SpotifyClientApi ->
spotifyAppRemote?.playerApi?.play(currentMediaItem?.localConfiguration?.uri.toString())?.setResultCallback {
runBlocking {
guardValidSpotifyApi { api: SpotifyClientApi ->
try {
api.player.startPlayback(contextUri = contextUri, offsetPlayableUri = playableUri)
}

audioManager?.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_UNMUTE , AudioManager.FLAG_SHOW_UI)
delay(2000)
spotifyAppRemote?.playerApi?.playerState?.setResultCallback {
if (it.isPaused) {
spotifyAppRemote?.playerApi?.seekTo(0)
spotifyAppRemote?.playerApi?.resume()
}
}
} catch (e: Throwable) {}
}

audioManager?.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_UNMUTE , AudioManager.FLAG_SHOW_UI)
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ import androidx.compose.runtime.mutableStateOf
import com.adamratzman.spotify.SpotifyClientApi
import com.adamratzman.spotify.models.*
import de.techmaved.mediabrowserforspotify.BuildConfig
import de.techmaved.mediabrowserforspotify.auth.guardValidSpotifyApi
import de.techmaved.mediabrowserforspotify.models.ChipType
import de.techmaved.mediabrowserforspotify.ui.components.ChipItem

class SpotifyWebApiService {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package de.techmaved.mediabrowserforspotify.utils
package de.techmaved.mediabrowserforspotify.utils.database

import android.content.Context
import androidx.room.Database
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package de.techmaved.mediabrowserforspotify.utils
package de.techmaved.mediabrowserforspotify.utils.database

import android.net.Uri
import androidx.room.TypeConverter
Expand Down

0 comments on commit 6f886d3

Please sign in to comment.