Enabled scrolling to LastFM

This commit is contained in:
CappielloAntonio 2022-01-04 15:31:52 +01:00
parent 483ce56277
commit cdc01a8d26
2 changed files with 14 additions and 0 deletions

View file

@ -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<Song> songs, boolean reset, int afterIndex) {
getQueueRepository().insertAll(songs, reset, afterIndex);
}
@ -297,4 +306,6 @@ public class MediaManager {
getQueueRepository().insertAll(songs, true, 0);
}
}
}

View file

@ -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