diff --git a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java index aa517e1c..867b363e 100644 --- a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java +++ b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java @@ -1,6 +1,7 @@ package com.cappielloantonio.play.repository; import android.app.Application; +import android.util.Log; import androidx.lifecycle.LiveData; @@ -14,6 +15,8 @@ import java.util.ArrayList; import java.util.List; public class SongRepository { + private static final String TAG = "SongRepository"; + private SongDao songDao; private SongGenreCrossDao songGenreCrossDao; private LiveData> searchListLiveSongs; @@ -192,11 +195,13 @@ public class SongRepository { } public void increasePlayCount(Song song) { - song.nowPlaying(); + boolean isIncreased = song.nowPlaying(); - UpdateThreadSafe update = new UpdateThreadSafe(songDao, song); - Thread thread = new Thread(update); - thread.start(); + if(isIncreased) { + UpdateThreadSafe update = new UpdateThreadSafe(songDao, song); + Thread thread = new Thread(update); + thread.start(); + } } public void setFavoriteStatus(Song song) { diff --git a/app/src/main/java/com/cappielloantonio/play/service/MusicService.java b/app/src/main/java/com/cappielloantonio/play/service/MusicService.java index b1a80121..6dae5ed5 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MusicService.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MusicService.java @@ -32,6 +32,7 @@ import com.cappielloantonio.play.R; import com.cappielloantonio.play.model.Playlist; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.repository.QueueRepository; +import com.cappielloantonio.play.repository.SongRepository; import com.cappielloantonio.play.service.notification.PlayingNotification; import com.cappielloantonio.play.service.playback.Playback; import com.cappielloantonio.play.util.PreferenceUtil; @@ -436,6 +437,8 @@ public class MusicService extends Service implements Playback.PlaybackCallbacks nextPosition = getNextPosition(); playback.queueDataSource(getSongAt(nextPosition)); } + + increaseSongCount(); } private boolean requestFocus() { @@ -735,6 +738,11 @@ public class MusicService extends Service implements Playback.PlaybackCallbacks } } + private void increaseSongCount() { + SongRepository songRepository = new SongRepository(App.getInstance()); + songRepository.increasePlayCount(getCurrentSong()); + } + @Override public void onStateChanged(int state) { notifyChange(STATE_CHANGED);