diff --git a/app/build.gradle b/app/build.gradle index 2cc7d02..4a18004 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,8 +18,8 @@ android { applicationId "eu.zderadicka.audioserve" minSdkVersion 21 targetSdkVersion 27 - versionCode 13 - versionName "0.6.6" + versionCode 14 + versionName "0.6.7" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 5f09e52..e9cc944 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -38,7 +38,7 @@ + android:exported="true"> diff --git a/app/src/main/java/eu/zderadicka/audioserve/AudioService.kt b/app/src/main/java/eu/zderadicka/audioserve/AudioService.kt index cf3b325..2e64b79 100644 --- a/app/src/main/java/eu/zderadicka/audioserve/AudioService.kt +++ b/app/src/main/java/eu/zderadicka/audioserve/AudioService.kt @@ -130,6 +130,11 @@ class AudioService : MediaBrowserServiceCompat() { } + override fun onSeekTo(player: Player?, position: Long) { + previousPositionUpdateTime = 0 + super.onSeekTo(player, position) + } + override fun onPlay(player: Player) { Log.d(LOG_TAG, "Playback started") val autoRewind = calcAutoRewind() @@ -184,7 +189,8 @@ class AudioService : MediaBrowserServiceCompat() { previousPositionUpdateTime = 0 val updatedBefore = System.currentTimeMillis() - prevPos Log.d(LOG_TAG,"Determine autorewind for item ${currentMediaItem}, updated before${updatedBefore}") - return if (updatedBefore < 5* MINUTE_IN_MILLIS) 2000 + return if (updatedBefore < 10_000) 0 + else if (updatedBefore < 5* MINUTE_IN_MILLIS) 2000 else if (updatedBefore < 30 * MINUTE_IN_MILLIS) 15_000 else if (updatedBefore < YEAR_IN_MILLIS) 30_000 else 0 @@ -477,7 +483,7 @@ class AudioService : MediaBrowserServiceCompat() { preparer.sourceFactory = null } "pref_autorewind" -> { - enableAutoRewind = sharedPreferences.getBoolean("pref_autorewind", false) + enableAutoRewind = sharedPreferences.getBoolean("pref_autorewind", true) } } } @@ -504,7 +510,7 @@ class AudioService : MediaBrowserServiceCompat() { super.onCreate() preloadFiles = PreferenceManager.getDefaultSharedPreferences(this).getString("pref_preload","2").toInt() isOffline = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("pref_offline",false) - enableAutoRewind = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("pref_autorewind", false) + enableAutoRewind = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("pref_autorewind", true) session = MediaSessionCompat(this, LOG_TAG) session.controller.registerCallback(sessionCallback) player = ExoPlayerFactory.newSimpleInstance(this, DefaultTrackSelector()) diff --git a/app/src/main/java/eu/zderadicka/audioserve/SettingsActivity.kt b/app/src/main/java/eu/zderadicka/audioserve/SettingsActivity.kt index 4dc1f05..37c9945 100644 --- a/app/src/main/java/eu/zderadicka/audioserve/SettingsActivity.kt +++ b/app/src/main/java/eu/zderadicka/audioserve/SettingsActivity.kt @@ -215,7 +215,7 @@ class SettingsFragment: PreferenceFragment(), SharedPreferences.OnSharedPreferen } "pref_autorewind" -> { if (pref !is CheckBoxPreference) return - val checked = sps.getBoolean("pref_autorewind", false) + val checked = sps.getBoolean("pref_autorewind", true) if (checked) { pref.summary=getString(R.string.pref_autorewind_selected_title) diff --git a/app/src/main/java/eu/zderadicka/audioserve/data/Model.kt b/app/src/main/java/eu/zderadicka/audioserve/data/Model.kt index ad4ae68..3f5f740 100644 --- a/app/src/main/java/eu/zderadicka/audioserve/data/Model.kt +++ b/app/src/main/java/eu/zderadicka/audioserve/data/Model.kt @@ -9,6 +9,8 @@ import eu.zderadicka.audioserve.utils.splitExtension import java.io.File const val METADATA_KEY_DURATION = MediaMetadataCompat.METADATA_KEY_DURATION +const val METADATA_KEY_TITLE = MediaMetadataCompat.METADATA_KEY_TITLE +const val METADATA_KEY_ARTIST = MediaMetadataCompat.METADATA_KEY_ARTIST const val METADATA_KEY_LAST_POSITION = "eu.zderadicka.audioserve.last_position" const val METADATA_KEY_BITRATE = "eu.zderadicka.audioserve.bitrate" const val METADATA_KEY_TRANSCODED = "eu.zderadicka.audioserve.transcoded" @@ -88,10 +90,11 @@ class AudioFolder(name: String, path: String, val subfolders: ArrayListAuto Rewind No auto rewind, playback will start exactly where it was paused Before continuing playback it\'\'ll be rewind by a small amount (2s-30s), depending how long it was paused + Rewind + Forward