Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e6f9bdeb authored by Sungsoo Lim's avatar Sungsoo Lim
Browse files

Revert Media 1.0 API changes for mainline module

Bug: 119539695
Test: pass MediaSessionTest, MediaControllerTest, and
      MediaSessionManagerTest
Change-Id: I2453dfcd3852c77a825b5ed5db197591303a6115
parent 6e6b31ad
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -27386,7 +27386,6 @@ package android.media.session {
    method public int getRatingType();
    method @Nullable public android.app.PendingIntent getSessionActivity();
    method @NonNull public android.media.session.MediaSession.Token getSessionToken();
    method public String getTag();
    method @NonNull public android.media.session.MediaController.TransportControls getTransportControls();
    method public void registerCallback(@NonNull android.media.session.MediaController.Callback);
    method public void registerCallback(@NonNull android.media.session.MediaController.Callback, @Nullable android.os.Handler);
+0 −190
Original line number Diff line number Diff line
@@ -3579,140 +3579,10 @@ package android.media.audiopolicy {
package android.media.session {
  public final class ControllerCallbackLink implements android.os.Parcelable {
    ctor public ControllerCallbackLink(@NonNull android.content.Context, @NonNull android.media.session.ControllerCallbackLink.CallbackStub);
    ctor public ControllerCallbackLink(android.os.IBinder);
    method public int describeContents();
    method @NonNull public android.os.IBinder getBinder();
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyEvent(@NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyExtrasChanged(@Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyMetadataChanged(@Nullable android.media.MediaMetadata);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPlaybackStateChanged(@Nullable android.media.session.PlaybackState);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyQueueChanged(@Nullable java.util.List<android.media.session.MediaSession.QueueItem>);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyQueueTitleChanged(@Nullable CharSequence);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifySessionDestroyed();
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyVolumeInfoChanged(@NonNull android.media.session.MediaController.PlaybackInfo);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.media.session.ControllerCallbackLink> CREATOR;
  }
  public abstract static class ControllerCallbackLink.CallbackStub {
    ctor public ControllerCallbackLink.CallbackStub();
    method public void onEvent(@NonNull String, @Nullable android.os.Bundle);
    method public void onExtrasChanged(@Nullable android.os.Bundle);
    method public void onMetadataChanged(@Nullable android.media.MediaMetadata);
    method public void onPlaybackStateChanged(@Nullable android.media.session.PlaybackState);
    method public void onQueueChanged(@Nullable java.util.List<android.media.session.MediaSession.QueueItem>);
    method public void onQueueTitleChanged(@Nullable CharSequence);
    method public void onSessionDestroyed();
    method public void onVolumeInfoChanged(@NonNull android.media.session.MediaController.PlaybackInfo);
  }
  public final class ControllerLink implements android.os.Parcelable {
    ctor public ControllerLink(@NonNull android.media.session.ControllerLink.ControllerStub);
    ctor public ControllerLink(android.os.IBinder);
    method public int describeContents();
    method @NonNull public android.os.IBinder getBinder();
    method @Nullable public android.os.Bundle getExtras();
    method @Nullable public android.media.MediaMetadata getMetadata();
    method @Nullable public android.media.session.PlaybackState getPlaybackState();
    method @Nullable public java.util.List<android.media.session.MediaSession.QueueItem> getQueue();
    method @Nullable public CharSequence getQueueTitle();
    method public int getRatingType();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.media.session.ControllerLink> CREATOR;
  }
  public abstract static class ControllerLink.ControllerStub {
    ctor public ControllerLink.ControllerStub();
    method public void adjustVolume(@NonNull String, @NonNull String, @NonNull android.media.session.ControllerCallbackLink, int, int);
    method public void fastForward(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method @Nullable public android.os.Bundle getExtras();
    method public long getFlags();
    method @Nullable public android.app.PendingIntent getLaunchPendingIntent();
    method @Nullable public android.media.MediaMetadata getMetadata();
    method @NonNull public String getPackageName();
    method @Nullable public android.media.session.PlaybackState getPlaybackState();
    method @Nullable public java.util.List<android.media.session.MediaSession.QueueItem> getQueue();
    method @Nullable public CharSequence getQueueTitle();
    method public int getRatingType();
    method @NonNull public String getTag();
    method @NonNull public android.media.session.MediaController.PlaybackInfo getVolumeAttributes();
    method public void next(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void pause(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void play(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void playFromMediaId(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method public void playFromSearch(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method public void playFromUri(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.net.Uri, @Nullable android.os.Bundle);
    method public void prepare(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void prepareFromMediaId(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method public void prepareFromSearch(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method public void prepareFromUri(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.net.Uri, @Nullable android.os.Bundle);
    method public void previous(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void rate(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.media.Rating);
    method public void registerCallback(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void rewind(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void seekTo(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, long);
    method public void sendCommand(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver);
    method public void sendCustomAction(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method public boolean sendMediaButton(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.view.KeyEvent);
    method public void setVolumeTo(@NonNull String, @NonNull String, @NonNull android.media.session.ControllerCallbackLink, int, int);
    method public void skipToQueueItem(@NonNull String, @NonNull android.media.session.ControllerCallbackLink, long);
    method public void stop(@NonNull String, @NonNull android.media.session.ControllerCallbackLink);
    method public void unregisterCallback(@NonNull android.media.session.ControllerCallbackLink);
  }
  public static final class MediaController.PlaybackInfo implements android.os.Parcelable {
    ctor public MediaController.PlaybackInfo(int, int, int, int, android.media.AudioAttributes);
  }
  public abstract static class MediaSession.Callback {
    method public void onSetMediaButtonEventDelegate(@NonNull android.media.session.MediaSessionEngine.MediaButtonEventDelegate);
  }
  public static final class MediaSession.Token implements android.os.Parcelable {
    method public android.media.session.ControllerLink getControllerLink();
  }
  public final class MediaSessionEngine implements java.lang.AutoCloseable {
    ctor public MediaSessionEngine(@NonNull android.content.Context, @NonNull android.media.session.SessionLink, @NonNull android.media.session.SessionCallbackLink);
    method public void close();
    method public String getCallingPackage();
    method @NonNull public android.media.session.MediaController getController();
    method @NonNull public android.media.session.MediaSessionManager.RemoteUserInfo getCurrentControllerInfo();
    method @NonNull public android.media.session.MediaSession.Token getSessionToken();
    method public boolean isActive();
    method public static boolean isActiveState(int);
    method public void sendSessionEvent(@NonNull String, @Nullable android.os.Bundle);
    method public void setActive(boolean);
    method public void setCallback(@Nullable android.media.session.MediaSession.Callback);
    method public void setCallback(@Nullable android.media.session.MediaSession.Callback, @NonNull android.os.Handler);
    method public void setExtras(@Nullable android.os.Bundle);
    method public void setFlags(int);
    method public void setMediaButtonReceiver(@Nullable android.app.PendingIntent);
    method public void setMetadata(@Nullable android.media.MediaMetadata);
    method public void setPlaybackState(@Nullable android.media.session.PlaybackState);
    method public void setPlaybackToLocal(android.media.AudioAttributes);
    method public void setPlaybackToRemote(@NonNull android.media.VolumeProvider);
    method public void setQueue(@Nullable java.util.List<android.media.session.MediaSession.QueueItem>);
    method public void setQueueTitle(@Nullable CharSequence);
    method public void setRatingType(int);
    method public void setSessionActivity(@Nullable android.app.PendingIntent);
  }
  public static interface MediaSessionEngine.MediaButtonEventDelegate {
    method public boolean onMediaButtonIntent(android.content.Intent);
  }
  public static final class MediaSessionEngine.QueueItem {
    ctor public MediaSessionEngine.QueueItem(android.media.MediaDescription, long);
    ctor public MediaSessionEngine.QueueItem(android.os.Parcel);
    method public android.media.MediaDescription getDescription();
    method public long getQueueId();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final int UNKNOWN_ID = -1; // 0xffffffff
  }
  public final class MediaSessionManager {
    method @RequiresPermission(android.Manifest.permission.SET_MEDIA_KEY_LISTENER) public void setOnMediaKeyListener(android.media.session.MediaSessionManager.OnMediaKeyListener, @Nullable android.os.Handler);
    method @RequiresPermission(android.Manifest.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER) public void setOnVolumeKeyLongPressListener(android.media.session.MediaSessionManager.OnVolumeKeyLongPressListener, @Nullable android.os.Handler);
@@ -3726,66 +3596,6 @@ package android.media.session {
    method public void onVolumeKeyLongPress(android.view.KeyEvent);
  }
  public final class SessionCallbackLink implements android.os.Parcelable {
    ctor public SessionCallbackLink(android.os.IBinder);
    method public int describeContents();
    method @NonNull public android.os.IBinder getBinder();
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyAdjustVolume(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, int);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyCommand(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyCustomAction(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyFastForward(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyMediaButton(@NonNull String, int, int, @NonNull android.content.Intent, int, @Nullable android.os.ResultReceiver);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyMediaButtonFromController(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.content.Intent);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyNext(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPause(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPlay(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPlayFromMediaId(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPlayFromSearch(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPlayFromUri(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.net.Uri, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPrepare(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPrepareFromMediaId(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPrepareFromSearch(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull String, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPrepareFromUri(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.net.Uri, @Nullable android.os.Bundle);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyPrevious(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyRate(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, @NonNull android.media.Rating);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyRewind(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifySeekTo(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, long);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifySetVolumeTo(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, int);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifySkipToTrack(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink, long);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void notifyStop(@NonNull String, int, int, @NonNull android.media.session.ControllerCallbackLink);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.media.session.SessionCallbackLink> CREATOR;
  }
  public final class SessionLink implements android.os.Parcelable {
    ctor public SessionLink(@NonNull android.media.session.SessionLink.SessionStub);
    ctor public SessionLink(android.os.IBinder);
    method public int describeContents();
    method @NonNull public android.os.IBinder getBinder();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.media.session.SessionLink> CREATOR;
  }
  public abstract static class SessionLink.SessionStub {
    ctor public SessionLink.SessionStub();
    method public void destroySession();
    method @NonNull public android.media.session.ControllerLink getController();
    method public void sendEvent(@NonNull String, @Nullable android.os.Bundle);
    method public void setActive(boolean);
    method public void setCurrentVolume(int);
    method public void setExtras(@Nullable android.os.Bundle);
    method public void setFlags(int);
    method public void setLaunchPendingIntent(@Nullable android.app.PendingIntent);
    method public void setMediaButtonReceiver(@Nullable android.app.PendingIntent);
    method public void setMetadata(@Nullable android.media.MediaMetadata, long, @Nullable String);
    method public void setPlaybackState(@Nullable android.media.session.PlaybackState);
    method public void setPlaybackToLocal(@NonNull android.media.AudioAttributes);
    method public void setPlaybackToRemote(int, int);
    method public void setQueue(@Nullable java.util.List<android.media.session.MediaSession.QueueItem>);
    method public void setQueueTitle(@Nullable CharSequence);
    method public void setRatingType(int);
  }
}
package android.media.soundtrigger {
+0 −2
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import android.Manifest;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.content.Context;
import android.content.pm.PackageManager;
import android.media.MediaMetadata;
@@ -41,7 +40,6 @@ import java.util.List;
 * Handles incoming commands to {@link MediaController.Callback}.
 * @hide
 */
@SystemApi
public final class ControllerCallbackLink implements Parcelable {
    final Context mContext;
    final CallbackStub mCallbackStub;
+0 −2
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package android.media.session;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.SystemApi;
import android.app.PendingIntent;
import android.media.MediaMetadata;
import android.media.MediaParceledListSlice;
@@ -40,7 +39,6 @@ import java.util.Objects;
 * Handles incoming commands from {@link MediaController}.
 * @hide
 */
@SystemApi
public final class ControllerLink implements Parcelable {
    public static final Parcelable.Creator<ControllerLink> CREATOR =
            new Parcelable.Creator<ControllerLink>() {
+1 −0
Original line number Diff line number Diff line
@@ -413,6 +413,7 @@ public final class MediaController {
     * Get the session's tag for debugging purposes.
     *
     * @return The session's tag.
     * @hide
     */
    public String getTag() {
        if (mTag == null) {
Loading