diff --git a/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java b/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java index ee9d7668bc..994ea7443f 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java @@ -1889,8 +1889,17 @@ public final class ExoPlayerTest { AnalyticsListener listener = new AnalyticsListener() { @Override - public void onPlayerStateChanged( - EventTime eventTime, boolean playWhenReady, int playbackState) { + public void onPlaybackStateChanged(EventTime eventTime, @Player.State int state) { + if (eventTime.mediaPeriodId != null) { + reportedWindowSequenceNumbers.add(eventTime.mediaPeriodId.windowSequenceNumber); + } + } + + @Override + public void onPlayWhenReadyChanged( + EventTime eventTime, + boolean playWhenReady, + @Player.PlayWhenReadyChangeReason int reason) { if (eventTime.mediaPeriodId != null) { reportedWindowSequenceNumbers.add(eventTime.mediaPeriodId.windowSequenceNumber); } diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/ExoHostedTest.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/ExoHostedTest.java index d8dabf05b0..eba309abdf 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/ExoHostedTest.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/ExoHostedTest.java @@ -39,7 +39,6 @@ import com.google.android.exoplayer2.trackselection.MappingTrackSelector; import com.google.android.exoplayer2.util.Clock; import com.google.android.exoplayer2.util.EventLogger; import com.google.android.exoplayer2.util.HandlerWrapper; -import com.google.android.exoplayer2.util.Log; import com.google.android.exoplayer2.util.Util; import org.checkerframework.checker.nullness.qual.EnsuresNonNullIf; import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @@ -74,7 +73,6 @@ public abstract class ExoHostedTest implements AnalyticsListener, HostedTest { private @MonotonicNonNull ExoPlaybackException playerError; private boolean playerWasPrepared; - private boolean playing; private long totalPlayingTimeMs; private long lastPlayingStartTimeMs; private long sourceDurationMs; @@ -186,21 +184,21 @@ public abstract class ExoHostedTest implements AnalyticsListener, HostedTest { // AnalyticsListener @Override - public final void onPlayerStateChanged( - EventTime eventTime, boolean playWhenReady, @Player.State int playbackState) { - Log.d(tag, "state [" + playWhenReady + ", " + playbackState + "]"); + public final void onPlaybackStateChanged(EventTime eventTime, @Player.State int playbackState) { playerWasPrepared |= playbackState != Player.STATE_IDLE; if (playbackState == Player.STATE_ENDED || (playbackState == Player.STATE_IDLE && playerWasPrepared)) { stopTest(); } - boolean playing = playWhenReady && playbackState == Player.STATE_READY; - if (!this.playing && playing) { + } + + @Override + public void onIsPlayingChanged(EventTime eventTime, boolean playing) { + if (playing) { lastPlayingStartTimeMs = SystemClock.elapsedRealtime(); - } else if (this.playing && !playing) { + } else { totalPlayingTimeMs += SystemClock.elapsedRealtime() - lastPlayingStartTimeMs; } - this.playing = playing; } @Override