From cdc01a8d26816fdf9e2f4632817abdb8474491b8 Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Tue, 4 Jan 2022 15:31:52 +0100 Subject: [PATCH] Enabled scrolling to LastFM --- .../cappielloantonio/play/service/MediaManager.java | 11 +++++++++++ .../cappielloantonio/play/service/MediaService.java | 3 +++ 2 files changed, 14 insertions(+) diff --git a/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java b/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java index 2db68d7b..908d41f2 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MediaManager.java @@ -10,6 +10,7 @@ import com.cappielloantonio.play.App; import com.cappielloantonio.play.interfaces.MediaIndexCallback; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.repository.QueueRepository; +import com.cappielloantonio.play.repository.SongRepository; import com.cappielloantonio.play.util.MappingUtil; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; @@ -275,10 +276,18 @@ public class MediaManager { if (mediaItem != null) getQueueRepository().setPlayingPausedTimestamp(mediaItem.mediaId, ms); } + public static void scrobble(MediaItem mediaItem) { + if (mediaItem != null) getSongRepository().scrobble(mediaItem.mediaMetadata.extras.getString("id")); + } + private static QueueRepository getQueueRepository() { return new QueueRepository(App.getInstance()); } + private static SongRepository getSongRepository() { + return new SongRepository(App.getInstance()); + } + private static void enqueueDatabase(List songs, boolean reset, int afterIndex) { getQueueRepository().insertAll(songs, reset, afterIndex); } @@ -297,4 +306,6 @@ public class MediaManager { getQueueRepository().insertAll(songs, true, 0); } } + + } diff --git a/app/src/main/java/com/cappielloantonio/play/service/MediaService.java b/app/src/main/java/com/cappielloantonio/play/service/MediaService.java index 264644f9..1f1d5923 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MediaService.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MediaService.java @@ -11,6 +11,8 @@ import androidx.media3.common.MediaItem; import androidx.media3.common.Player; import androidx.media3.datasource.DataSource; import androidx.media3.exoplayer.ExoPlayer; +import androidx.media3.exoplayer.analytics.AnalyticsListener; +import androidx.media3.exoplayer.analytics.PlaybackStatsListener; import androidx.media3.exoplayer.source.DefaultMediaSourceFactory; import androidx.media3.exoplayer.source.MediaSourceFactory; import androidx.media3.session.MediaLibraryService; @@ -96,6 +98,7 @@ public class MediaService extends MediaLibraryService { @Override public void onMediaItemTransition(@Nullable MediaItem mediaItem, int reason) { MediaManager.setLastPlayedTimestamp(mediaItem); + MediaManager.scrobble(mediaItem); } @Override