[Android] Check media resume point only on loading
Geoffrey Métais
git at videolan.org
Tue Jan 16 17:44:59 CET 2018
vlc-android | branch: chromecast | Geoffrey Métais <geoffrey.metais at gmail.com> | Thu Dec 21 10:50:08 2017 +0100| [353d92f1877821bede685f3fb97b647a62dcb3c5] | committer: Geoffrey Métais
Check media resume point only on loading
> https://code.videolan.org/videolan/vlc-android/commit/353d92f1877821bede685f3fb97b647a62dcb3c5
---
vlc-android/src/org/videolan/vlc/PlaybackService.java | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/vlc-android/src/org/videolan/vlc/PlaybackService.java b/vlc-android/src/org/videolan/vlc/PlaybackService.java
index cecb75b82..5a45f7169 100644
--- a/vlc-android/src/org/videolan/vlc/PlaybackService.java
+++ b/vlc-android/src/org/videolan/vlc/PlaybackService.java
@@ -191,6 +191,7 @@ public class PlaybackService extends MediaBrowserServiceCompat implements IVLCVo
private int mRepeating = Constants.REPEAT_NONE;
private Random mRandom = null; // Used in shuffling process
private long mSavedTime = 0L;
+ private boolean mNewMedia;
private boolean mHasAudioFocus = false;
// RemoteControlClient-related
/**
@@ -624,7 +625,8 @@ public class PlaybackService extends MediaBrowserServiceCompat implements IVLCVo
mStopped = false;
final MediaWrapper mw = getCurrentMediaWrapper();
loadMediaMeta();
- seekToResume(mw);
+ if (mNewMedia) seekToResume(mw);
+ mNewMedia = false;
Log.i(TAG, "MediaPlayer.Event.Playing");
executeUpdate();
@@ -712,8 +714,7 @@ public class PlaybackService extends MediaBrowserServiceCompat implements IVLCVo
private void seekToResume(MediaWrapper mw) {
if (mSavedTime > 0L) {
- if (mSavedTime < 0.95*getLength())
- seek(mSavedTime);
+ if (mSavedTime < 0.95*getLength()) seek(mSavedTime);
mSavedTime = 0L;
} else {
final long length = getLength();
@@ -721,8 +722,7 @@ public class PlaybackService extends MediaBrowserServiceCompat implements IVLCVo
mw = mMedialibrary.findMedia(mw);
if (mw.getId() != 0L) {
mw.setTime((long) (mw.getMetaLong(MediaWrapper.META_PROGRESS) * (double) length) / 100L);
- if (mw.getTime() > 0L)
- seek(mw.getTime());
+ if (mw.getTime() > 0L) seek(mw.getTime());
}
}
}
@@ -2085,6 +2085,7 @@ public class PlaybackService extends MediaBrowserServiceCompat implements IVLCVo
setRate(mSettings.getFloat(PreferencesActivity.KEY_PLAYBACK_RATE, 1.0F), false);
if (mSavedTime <= 0L && mw.getTime() >= 0L && mw.isPodcast())
mSavedTime = mw.getTime();
+ mNewMedia = true;
mMediaPlayer.play();
determinePrevAndNextIndices();
More information about the Android
mailing list