Deprecate ControlDispatcher in the UI
PiperOrigin-RevId: 385129211
This commit is contained in:
parent
3830848888
commit
31c9875ec9
@ -100,6 +100,12 @@
|
|||||||
available commands.
|
available commands.
|
||||||
* Update `DefaultControlDispatcher` `getRewindIncrementMs` and
|
* Update `DefaultControlDispatcher` `getRewindIncrementMs` and
|
||||||
`getFastForwardIncrementMs` to take the player as parameter.
|
`getFastForwardIncrementMs` to take the player as parameter.
|
||||||
|
* Deprecate `setControlDispatcher` in `PlayerView`, `StyledPlayerView`,
|
||||||
|
`PlayerControlView`, `StyledPlayerControlView` and
|
||||||
|
`PlayerNotificationManager`. Instead, you can use a `ForwardingPlayer`,
|
||||||
|
configure the player as needed (whenever possible) or, for
|
||||||
|
`PlayerNotificationManager`, use `setUseRewindAction` and
|
||||||
|
`setUseFastForwardAction` to configure whether to use these actions.
|
||||||
* Video:
|
* Video:
|
||||||
* Fix `IncorrectContextUseViolation` strict mode warning on Android 11
|
* Fix `IncorrectContextUseViolation` strict mode warning on Android 11
|
||||||
([#8246](https://github.com/google/ExoPlayer/pull/8246)).
|
([#8246](https://github.com/google/ExoPlayer/pull/8246)).
|
||||||
|
@ -48,9 +48,11 @@ import androidx.annotation.Nullable;
|
|||||||
import com.google.android.exoplayer2.C;
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.ControlDispatcher;
|
import com.google.android.exoplayer2.ControlDispatcher;
|
||||||
import com.google.android.exoplayer2.ExoPlayerLibraryInfo;
|
import com.google.android.exoplayer2.ExoPlayerLibraryInfo;
|
||||||
|
import com.google.android.exoplayer2.ForwardingPlayer;
|
||||||
import com.google.android.exoplayer2.Player;
|
import com.google.android.exoplayer2.Player;
|
||||||
import com.google.android.exoplayer2.Player.Events;
|
import com.google.android.exoplayer2.Player.Events;
|
||||||
import com.google.android.exoplayer2.Player.State;
|
import com.google.android.exoplayer2.Player.State;
|
||||||
|
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||||
import com.google.android.exoplayer2.Timeline;
|
import com.google.android.exoplayer2.Timeline;
|
||||||
import com.google.android.exoplayer2.util.Assertions;
|
import com.google.android.exoplayer2.util.Assertions;
|
||||||
import com.google.android.exoplayer2.util.RepeatModeUtil;
|
import com.google.android.exoplayer2.util.RepeatModeUtil;
|
||||||
@ -599,10 +601,11 @@ public class PlayerControlView extends FrameLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the {@link com.google.android.exoplayer2.ControlDispatcher}.
|
* @deprecated Use a {@link ForwardingPlayer} and pass it to {@link #setPlayer(Player)} instead.
|
||||||
*
|
* You can also customize some operations when configuring the player (for example by using
|
||||||
* @param controlDispatcher The {@link com.google.android.exoplayer2.ControlDispatcher}.
|
* {@link SimpleExoPlayer.Builder#setSeekBackIncrementMs(long)}).
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
||||||
if (this.controlDispatcher != controlDispatcher) {
|
if (this.controlDispatcher != controlDispatcher) {
|
||||||
this.controlDispatcher = controlDispatcher;
|
this.controlDispatcher = controlDispatcher;
|
||||||
|
@ -53,7 +53,9 @@ import androidx.media.app.NotificationCompat.MediaStyle;
|
|||||||
import com.google.android.exoplayer2.C;
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.ControlDispatcher;
|
import com.google.android.exoplayer2.ControlDispatcher;
|
||||||
import com.google.android.exoplayer2.DefaultControlDispatcher;
|
import com.google.android.exoplayer2.DefaultControlDispatcher;
|
||||||
|
import com.google.android.exoplayer2.ForwardingPlayer;
|
||||||
import com.google.android.exoplayer2.Player;
|
import com.google.android.exoplayer2.Player;
|
||||||
|
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||||
import com.google.android.exoplayer2.util.NotificationUtil;
|
import com.google.android.exoplayer2.util.NotificationUtil;
|
||||||
import com.google.android.exoplayer2.util.Util;
|
import com.google.android.exoplayer2.util.Util;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
@ -815,10 +817,13 @@ public class PlayerNotificationManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the {@link ControlDispatcher}.
|
* @deprecated Use a {@link ForwardingPlayer} and pass it to {@link #setPlayer(Player)} instead.
|
||||||
*
|
* You can also customize some operations when configuring the player (for example by using
|
||||||
* @param controlDispatcher The {@link ControlDispatcher}.
|
* {@link SimpleExoPlayer.Builder#setSeekBackIncrementMs(long)}), or configure whether the
|
||||||
|
* rewind and fast forward actions should be used with {{@link #setUseRewindAction(boolean)}}
|
||||||
|
* and {@link #setUseFastForwardAction(boolean)}.
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public final void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
public final void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
||||||
if (this.controlDispatcher != controlDispatcher) {
|
if (this.controlDispatcher != controlDispatcher) {
|
||||||
this.controlDispatcher = controlDispatcher;
|
this.controlDispatcher = controlDispatcher;
|
||||||
|
@ -48,9 +48,11 @@ import androidx.core.content.ContextCompat;
|
|||||||
import com.google.android.exoplayer2.C;
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.ControlDispatcher;
|
import com.google.android.exoplayer2.ControlDispatcher;
|
||||||
import com.google.android.exoplayer2.Format;
|
import com.google.android.exoplayer2.Format;
|
||||||
|
import com.google.android.exoplayer2.ForwardingPlayer;
|
||||||
import com.google.android.exoplayer2.PlaybackException;
|
import com.google.android.exoplayer2.PlaybackException;
|
||||||
import com.google.android.exoplayer2.Player;
|
import com.google.android.exoplayer2.Player;
|
||||||
import com.google.android.exoplayer2.Player.DiscontinuityReason;
|
import com.google.android.exoplayer2.Player.DiscontinuityReason;
|
||||||
|
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||||
import com.google.android.exoplayer2.Timeline;
|
import com.google.android.exoplayer2.Timeline;
|
||||||
import com.google.android.exoplayer2.Timeline.Period;
|
import com.google.android.exoplayer2.Timeline.Period;
|
||||||
import com.google.android.exoplayer2.metadata.Metadata;
|
import com.google.android.exoplayer2.metadata.Metadata;
|
||||||
@ -929,10 +931,11 @@ public class PlayerView extends FrameLayout implements AdViewProvider {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the {@link ControlDispatcher}.
|
* @deprecated Use a {@link ForwardingPlayer} and pass it to {@link #setPlayer(Player)} instead.
|
||||||
*
|
* You can also customize some operations when configuring the player (for example by using
|
||||||
* @param controlDispatcher The {@link ControlDispatcher}.
|
* {@link SimpleExoPlayer.Builder#setSeekBackIncrementMs(long)}).
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
||||||
Assertions.checkStateNotNull(controller);
|
Assertions.checkStateNotNull(controller);
|
||||||
controller.setControlDispatcher(controlDispatcher);
|
controller.setControlDispatcher(controlDispatcher);
|
||||||
|
@ -61,9 +61,11 @@ import com.google.android.exoplayer2.DefaultControlDispatcher;
|
|||||||
import com.google.android.exoplayer2.ExoPlayer;
|
import com.google.android.exoplayer2.ExoPlayer;
|
||||||
import com.google.android.exoplayer2.ExoPlayerLibraryInfo;
|
import com.google.android.exoplayer2.ExoPlayerLibraryInfo;
|
||||||
import com.google.android.exoplayer2.Format;
|
import com.google.android.exoplayer2.Format;
|
||||||
|
import com.google.android.exoplayer2.ForwardingPlayer;
|
||||||
import com.google.android.exoplayer2.Player;
|
import com.google.android.exoplayer2.Player;
|
||||||
import com.google.android.exoplayer2.Player.Events;
|
import com.google.android.exoplayer2.Player.Events;
|
||||||
import com.google.android.exoplayer2.Player.State;
|
import com.google.android.exoplayer2.Player.State;
|
||||||
|
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||||
import com.google.android.exoplayer2.Timeline;
|
import com.google.android.exoplayer2.Timeline;
|
||||||
import com.google.android.exoplayer2.source.TrackGroup;
|
import com.google.android.exoplayer2.source.TrackGroup;
|
||||||
import com.google.android.exoplayer2.source.TrackGroupArray;
|
import com.google.android.exoplayer2.source.TrackGroupArray;
|
||||||
@ -832,10 +834,11 @@ public class StyledPlayerControlView extends FrameLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the {@link ControlDispatcher}.
|
* @deprecated Use a {@link ForwardingPlayer} and pass it to {@link #setPlayer(Player)} instead.
|
||||||
*
|
* You can also customize some operations when configuring the player (for example by using
|
||||||
* @param controlDispatcher The {@link ControlDispatcher}.
|
* {@link SimpleExoPlayer.Builder#setSeekBackIncrementMs(long)}).
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
||||||
if (this.controlDispatcher != controlDispatcher) {
|
if (this.controlDispatcher != controlDispatcher) {
|
||||||
this.controlDispatcher = controlDispatcher;
|
this.controlDispatcher = controlDispatcher;
|
||||||
|
@ -49,9 +49,11 @@ import androidx.core.content.ContextCompat;
|
|||||||
import com.google.android.exoplayer2.C;
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.ControlDispatcher;
|
import com.google.android.exoplayer2.ControlDispatcher;
|
||||||
import com.google.android.exoplayer2.Format;
|
import com.google.android.exoplayer2.Format;
|
||||||
|
import com.google.android.exoplayer2.ForwardingPlayer;
|
||||||
import com.google.android.exoplayer2.PlaybackException;
|
import com.google.android.exoplayer2.PlaybackException;
|
||||||
import com.google.android.exoplayer2.Player;
|
import com.google.android.exoplayer2.Player;
|
||||||
import com.google.android.exoplayer2.Player.DiscontinuityReason;
|
import com.google.android.exoplayer2.Player.DiscontinuityReason;
|
||||||
|
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||||
import com.google.android.exoplayer2.Timeline;
|
import com.google.android.exoplayer2.Timeline;
|
||||||
import com.google.android.exoplayer2.Timeline.Period;
|
import com.google.android.exoplayer2.Timeline.Period;
|
||||||
import com.google.android.exoplayer2.metadata.Metadata;
|
import com.google.android.exoplayer2.metadata.Metadata;
|
||||||
@ -947,10 +949,11 @@ public class StyledPlayerView extends FrameLayout implements AdViewProvider {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the {@link ControlDispatcher}.
|
* @deprecated Use a {@link ForwardingPlayer} and pass it to {@link #setPlayer(Player)} instead.
|
||||||
*
|
* You can also customize some operations when configuring the player (for example by using
|
||||||
* @param controlDispatcher The {@link ControlDispatcher}.
|
* {@link SimpleExoPlayer.Builder#setSeekBackIncrementMs(long)}).
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
public void setControlDispatcher(ControlDispatcher controlDispatcher) {
|
||||||
Assertions.checkStateNotNull(controller);
|
Assertions.checkStateNotNull(controller);
|
||||||
controller.setControlDispatcher(controlDispatcher);
|
controller.setControlDispatcher(controlDispatcher);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user