diff --git a/demos/cast/src/main/java/com/google/android/exoplayer2/castdemo/PlayerManager.java b/demos/cast/src/main/java/com/google/android/exoplayer2/castdemo/PlayerManager.java index 9dc82e0b23..8c367b8734 100644 --- a/demos/cast/src/main/java/com/google/android/exoplayer2/castdemo/PlayerManager.java +++ b/demos/cast/src/main/java/com/google/android/exoplayer2/castdemo/PlayerManager.java @@ -312,7 +312,8 @@ import java.util.ArrayList; windowIndex = currentItemIndex; } } - previousPlayer.stop(true); + previousPlayer.stop(); + previousPlayer.clearMediaItems(); } this.currentPlayer = currentPlayer; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/Player.java b/library/core/src/main/java/com/google/android/exoplayer2/Player.java index 00cdb8f934..1abe7d4e5d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/Player.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/Player.java @@ -1219,8 +1219,7 @@ public interface Player { /** * Returns the error that caused playback to fail. This is the same error that will have been * reported via {@link Player.EventListener#onPlayerError(ExoPlaybackException)} at the time of - * failure. It can be queried using this method until {@code stop(true)} is called or the player - * is re-prepared. + * failure. It can be queried using this method until the player is re-prepared. * *

Note that this method will always return {@code null} if {@link #getPlaybackState()} is not * {@link #STATE_IDLE}. @@ -1405,16 +1404,11 @@ public interface Player { void stop(); /** - * Stops playback and optionally clears the playlist and resets the position and playback error. - * Use {@link #pause()} rather than this method if the intention is to pause playback. - * - *

Calling this method will cause the playback state to transition to {@link #STATE_IDLE}. The - * player instance can still be used, and {@link #release()} must still be called on the player if - * it's no longer required. - * - * @param reset Whether the playlist should be cleared and whether the playback position and - * playback error should be reset. + * @deprecated Use {@link #stop()} and {@link #clearMediaItems()} (if {@code reset} is true) or + * just {@link #stop()} (if {@code reset} is false). Any player error will be cleared when + * {@link #prepare() re-preparing} the player. */ + @Deprecated void stop(boolean reset); /** diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java index 6e1ff72621..a480b6375a 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java @@ -737,9 +737,8 @@ public class PlayerView extends FrameLayout implements AdsLoader.AdViewProvider /** * Sets whether the currently displayed video frame or media artwork is kept visible when the * player is reset. A player reset is defined to mean the player being re-prepared with different - * media, the player transitioning to unprepared media, {@link Player#stop(boolean)} being called - * with {@code reset=true}, or the player being replaced or cleared by calling {@link - * #setPlayer(Player)}. + * media, the player transitioning to unprepared media or an empty list of media items, or the + * player being replaced or cleared by calling {@link #setPlayer(Player)}. * *

If enabled, the currently displayed video frame or media artwork will be kept visible until * the player set on the view has been successfully prepared with new media and loaded enough of diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java index 9ba8394713..2856e4bec7 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java @@ -733,9 +733,8 @@ public class StyledPlayerView extends FrameLayout implements AdsLoader.AdViewPro /** * Sets whether the currently displayed video frame or media artwork is kept visible when the * player is reset. A player reset is defined to mean the player being re-prepared with different - * media, the player transitioning to unprepared media, {@link Player#stop(boolean)} being called - * with {@code reset=true}, or the player being replaced or cleared by calling {@link - * #setPlayer(Player)}. + * media, the player transitioning to unprepared media or an empty list of media items, or the + * player being replaced or cleared by calling {@link #setPlayer(Player)}. * *

If enabled, the currently displayed video frame or media artwork will be kept visible until * the player set on the view has been successfully prepared with new media and loaded enough of