diff --git a/app/src/main/java/com/example/mear/activities/MainActivity.kt b/app/src/main/java/com/example/mear/activities/MainActivity.kt
index 0c004e0..e2d92a1 100644
--- a/app/src/main/java/com/example/mear/activities/MainActivity.kt
+++ b/app/src/main/java/com/example/mear/activities/MainActivity.kt
@@ -1,6 +1,7 @@
package com.example.mear.activities
import android.Manifest
+import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.Color
@@ -12,6 +13,7 @@ import android.support.v4.content.ContextCompat
import android.view.MenuItem
import android.view.View
import android.widget.PopupMenu
+import android.widget.Toast
import java.lang.Exception
import java.lang.Runnable
@@ -30,17 +32,23 @@ import com.example.mear.constants.ControlTypes
import com.example.mear.listeners.TrackElaspingChange
import com.example.mear.models.PlayControls
import com.example.mear.R
+import com.example.mear.models.PlayCount
+import com.example.mear.repositories.PlayCountRepository
import com.example.mear.repositories.RepeatRepository
import com.example.mear.repositories.ShuffleRepository
+import com.example.mear.repositories.TrackRepository
import com.example.mear.util.ConvertByteArray
import com.example.mear.util.ExtractCover
+import kotlinx.coroutines.delay
class MainActivity : BaseServiceActivity() {
+ private val ctx: Context? = this
private var coverArtHandler: Handler? = Handler()
private var musicHandler: Handler? = Handler()
private var updateLibraryHandler: Handler? = Handler()
+ private var playCountUpdated: Boolean? = false
private var serviceBinded: Boolean? = false
private var repeatOn: Boolean? = false
private var shuffleOn: Boolean? = false
@@ -230,6 +238,7 @@ class MainActivity : BaseServiceActivity() {
print(exMsg)
}
NextTrack.isEnabled = true
+ playCountUpdated = false
}
private fun playPreviousSongTrack() {
PreviousTrack.isEnabled = false
@@ -243,10 +252,12 @@ class MainActivity : BaseServiceActivity() {
print(exMsg)
}
PreviousTrack.isEnabled = true
+ playCountUpdated = false
}
override fun configureTrackDisplay() {
try {
runOnUiThread {
+ playCountUpdated = false
configurePlayControlsDisplay()
val currTrack = musicService!!.getCurrentTrack()
val trackTitle = currTrack.title
@@ -335,6 +346,12 @@ class MainActivity : BaseServiceActivity() {
R.id.action_song_view -> {
startActivity(Intent(this, SongViewActivity::class.java))
}
+ R.id.action_song_play_count-> {
+ val trk = musicService!!.getCurrentTrack()
+ val pc = PlayCountRepository(this).getPlayCount(trk.id)
+ val playCount = pc.playCount
+ Toast.makeText(this, "Song played $playCount times", Toast.LENGTH_LONG).show()
+ }
}
true
}
diff --git a/app/src/main/java/com/example/mear/constants/Interval.kt b/app/src/main/java/com/example/mear/constants/Interval.kt
new file mode 100644
index 0000000..ae787e8
--- /dev/null
+++ b/app/src/main/java/com/example/mear/constants/Interval.kt
@@ -0,0 +1,5 @@
+package com.example.mear.constants
+
+object Interval {
+ const val SONG_REWIND = 4
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/mear/playback/service/MusicService.kt b/app/src/main/java/com/example/mear/playback/service/MusicService.kt
index c3876e6..b993feb 100644
--- a/app/src/main/java/com/example/mear/playback/service/MusicService.kt
+++ b/app/src/main/java/com/example/mear/playback/service/MusicService.kt
@@ -12,6 +12,7 @@ import java.lang.Exception
import kotlin.random.Random
import com.example.mear.constants.ControlTypes
+import com.example.mear.constants.Interval
import com.example.mear.management.MusicFiles
import com.example.mear.management.TrackManager
import com.example.mear.models.PlayControls
@@ -37,7 +38,7 @@ class MusicService: Service() {
private var shuffleOn: Boolean? = null
private var repeatOn: Boolean? = null
private val mBinder = LocalBinder()
- private val seconds = 4
+ private val seconds = Interval.SONG_REWIND
inner class LocalBinder : Binder() {
diff --git a/app/src/main/res/menu/popup_menu.xml b/app/src/main/res/menu/popup_menu.xml
index 7c3c7ed..643c0ad 100644
--- a/app/src/main/res/menu/popup_menu.xml
+++ b/app/src/main/res/menu/popup_menu.xml
@@ -7,4 +7,7 @@
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index a9c9628..9b93fff 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -35,6 +35,7 @@
Settings
Songs
+ Play Count
About