Deprecate onPlayerCommandRequest

This method doesn't really serve a purpose that isn't handled
elsewhere. The return value is also not forwarded to anyone.

PiperOrigin-RevId: 527283166
This commit is contained in:
tonihei 2023-04-26 17:09:16 +01:00 committed by Ian Baker
parent 7938978b51
commit 2cbab10419
3 changed files with 6 additions and 12 deletions

View File

@ -1733,7 +1733,7 @@ package androidx.media3.session {
method public default androidx.media3.session.MediaSession.ConnectionResult onConnect(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo);
method public default com.google.common.util.concurrent.ListenableFuture<androidx.media3.session.SessionResult> onCustomCommand(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo, androidx.media3.session.SessionCommand, android.os.Bundle);
method public default void onDisconnected(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo);
method @androidx.media3.session.SessionResult.Code public default int onPlayerCommandRequest(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo, @androidx.media3.common.Player.Command int);
method @Deprecated @androidx.media3.session.SessionResult.Code public default int onPlayerCommandRequest(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo, @androidx.media3.common.Player.Command int);
method public default void onPostConnect(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo);
method public default com.google.common.util.concurrent.ListenableFuture<androidx.media3.session.SessionResult> onSetRating(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo, String, androidx.media3.common.Rating);
method public default com.google.common.util.concurrent.ListenableFuture<androidx.media3.session.SessionResult> onSetRating(androidx.media3.session.MediaSession, androidx.media3.session.MediaSession.ControllerInfo, androidx.media3.common.Rating);

View File

@ -1019,18 +1019,11 @@ public class MediaSession {
default void onDisconnected(MediaSession session, ControllerInfo controller) {}
/**
* Called when a controller sent a command which will be sent directly to the underlying {@link
* Player}.
*
* <p>Return {@link SessionResult#RESULT_SUCCESS} to proceed the command. Otherwise, the command
* won't be sent and the controller will receive the code. This method will be called for every
* single command.
*
* @param session The session for this event.
* @param controller The controller information.
* @param playerCommand A {@link Player.Command command}.
* @return {@link SessionResult#RESULT_SUCCESS} to proceed, or another code to ignore.
* @deprecated Modify the {@link Player#getAvailableCommands() available commands} of the player
* or use {@link MediaSession#setAvailableCommands} instead. The controller triggering a
* {@link Player} method can be obtained via {@link #getControllerForCurrentRequest()}.
*/
@Deprecated
default @SessionResult.Code int onPlayerCommandRequest(
MediaSession session, ControllerInfo controller, @Player.Command int playerCommand) {
return RESULT_SUCCESS;

View File

@ -437,6 +437,7 @@ import org.checkerframework.checker.initialization.qual.Initialized;
callback.onDisconnected(instance, controller);
}
@SuppressWarnings("deprecation") // Calling deprecated callback method.
public @SessionResult.Code int onPlayerCommandRequestOnHandler(
ControllerInfo controller, @Player.Command int playerCommand) {
return callback.onPlayerCommandRequest(instance, controller, playerCommand);