From 3a582e73c115e693bab8cb6f213d275704b9c5d7 Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Tue, 20 Mar 2018 17:59:13 -0700 Subject: [PATCH] Hide Media*2 APIs Bug: 76121592 Test: make offline-sdk-docs Change-Id: Ic5eba5ba0b3ef9f11c582ab6db7d8d61934941dd --- api/current.txt | 796 ------------------ .../android/widget/MediaControlView2.java | 1 + core/java/android/widget/VideoView2.java | 1 + media/java/android/media/AudioManager.java | 1 + media/java/android/media/AudioTrack.java | 4 + media/java/android/media/DataSourceDesc.java | 1 + .../java/android/media/Media2DataSource.java | 1 + media/java/android/media/MediaBrowser2.java | 1 + .../java/android/media/MediaController2.java | 1 + media/java/android/media/MediaItem2.java | 1 + .../android/media/MediaLibraryService2.java | 1 + media/java/android/media/MediaMetadata2.java | 1 + media/java/android/media/MediaPlayer2.java | 1 + media/java/android/media/MediaPlayerBase.java | 1 + .../android/media/MediaPlaylistAgent.java | 1 + media/java/android/media/MediaSession2.java | 1 + .../android/media/MediaSessionService2.java | 1 + media/java/android/media/SessionToken2.java | 1 + media/java/android/media/VolumeProvider2.java | 1 + .../media/session/MediaSessionManager.java | 6 + 20 files changed, 27 insertions(+), 796 deletions(-) diff --git a/api/current.txt b/api/current.txt index f5990eb6f426b..7991181c4f717 100644 --- a/api/current.txt +++ b/api/current.txt @@ -22093,7 +22093,6 @@ package android.media { method public boolean isBluetoothScoOn(); method public boolean isMicrophoneMute(); method public boolean isMusicActive(); - method public boolean isOffloadedPlaybackSupported(android.media.AudioFormat); method public boolean isSpeakerphoneOn(); method public boolean isStreamMute(int); method public boolean isVolumeFixed(); @@ -22419,7 +22418,6 @@ package android.media { method public int reloadStaticData(); method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); method public deprecated void removeOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener); - method public void removeStreamEventCallback(); method public int setAuxEffectSendLevel(float); method public int setBufferSizeInFrames(int); method public int setLoopPoints(int, int, int); @@ -22434,7 +22432,6 @@ package android.media { method public int setPresentation(android.media.AudioPresentation); method protected deprecated void setState(int); method public deprecated int setStereoVolume(float, float); - method public void setStreamEventCallback(java.util.concurrent.Executor, android.media.AudioTrack.StreamEventCallback); method public int setVolume(float); method public void stop() throws java.lang.IllegalStateException; method public int write(byte[], int, int); @@ -22470,7 +22467,6 @@ package android.media { method public android.media.AudioTrack.Builder setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; method public android.media.AudioTrack.Builder setAudioFormat(android.media.AudioFormat) throws java.lang.IllegalArgumentException; method public android.media.AudioTrack.Builder setBufferSizeInBytes(int) throws java.lang.IllegalArgumentException; - method public android.media.AudioTrack.Builder setOffloadedPlayback(boolean); method public android.media.AudioTrack.Builder setPerformanceMode(int); method public android.media.AudioTrack.Builder setSessionId(int) throws java.lang.IllegalArgumentException; method public android.media.AudioTrack.Builder setTransferMode(int) throws java.lang.IllegalArgumentException; @@ -22494,12 +22490,6 @@ package android.media { method public default void onRoutingChanged(android.media.AudioRouting); } - public static abstract class AudioTrack.StreamEventCallback { - method public void onStreamDataRequest(android.media.AudioTrack); - method public void onStreamPresentationEnd(android.media.AudioTrack); - method public void onTearDown(android.media.AudioTrack); - } - public class CamcorderProfile { method public static android.media.CamcorderProfile get(int); method public static android.media.CamcorderProfile get(int, int); @@ -22552,40 +22542,6 @@ package android.media { field public static final int QUALITY_MEDIUM = 1; // 0x1 } - public final class DataSourceDesc { - method public long getEndPosition(); - method public java.io.FileDescriptor getFileDescriptor(); - method public long getFileDescriptorLength(); - method public long getFileDescriptorOffset(); - method public android.media.Media2DataSource getMedia2DataSource(); - method public java.lang.String getMediaId(); - method public long getStartPosition(); - method public int getType(); - method public android.net.Uri getUri(); - method public android.content.Context getUriContext(); - method public java.util.List getUriCookies(); - method public java.util.Map getUriHeaders(); - field public static final long LONG_MAX = 576460752303423487L; // 0x7ffffffffffffffL - field public static final int TYPE_CALLBACK = 1; // 0x1 - field public static final int TYPE_FD = 2; // 0x2 - field public static final int TYPE_NONE = 0; // 0x0 - field public static final int TYPE_URI = 3; // 0x3 - } - - public static class DataSourceDesc.Builder { - ctor public DataSourceDesc.Builder(); - ctor public DataSourceDesc.Builder(android.media.DataSourceDesc); - method public android.media.DataSourceDesc build(); - method public android.media.DataSourceDesc.Builder setDataSource(android.media.Media2DataSource); - method public android.media.DataSourceDesc.Builder setDataSource(java.io.FileDescriptor); - method public android.media.DataSourceDesc.Builder setDataSource(java.io.FileDescriptor, long, long); - method public android.media.DataSourceDesc.Builder setDataSource(android.content.Context, android.net.Uri); - method public android.media.DataSourceDesc.Builder setDataSource(android.content.Context, android.net.Uri, java.util.Map, java.util.List); - method public android.media.DataSourceDesc.Builder setEndPosition(long); - method public android.media.DataSourceDesc.Builder setMediaId(java.lang.String); - method public android.media.DataSourceDesc.Builder setStartPosition(long); - } - public final class DeniedByServerException extends android.media.MediaDrmException { ctor public DeniedByServerException(java.lang.String); } @@ -22863,12 +22819,6 @@ package android.media { method public abstract void onJetUserIdUpdate(android.media.JetPlayer, int, int); } - public abstract class Media2DataSource implements java.io.Closeable { - ctor public Media2DataSource(); - method public abstract long getSize() throws java.io.IOException; - method public abstract int readAt(long, byte[], int, int) throws java.io.IOException; - } - public class MediaActionSound { ctor public MediaActionSound(); method public void load(int); @@ -22880,27 +22830,6 @@ package android.media { field public static final int STOP_VIDEO_RECORDING = 3; // 0x3 } - public class MediaBrowser2 extends android.media.MediaController2 { - ctor public MediaBrowser2(android.content.Context, android.media.SessionToken2, java.util.concurrent.Executor, android.media.MediaBrowser2.BrowserCallback); - method public void getChildren(java.lang.String, int, int, android.os.Bundle); - method public void getItem(java.lang.String); - method public void getLibraryRoot(android.os.Bundle); - method public void getSearchResult(java.lang.String, int, int, android.os.Bundle); - method public void search(java.lang.String, android.os.Bundle); - method public void subscribe(java.lang.String, android.os.Bundle); - method public void unsubscribe(java.lang.String); - } - - public static class MediaBrowser2.BrowserCallback extends android.media.MediaController2.ControllerCallback { - ctor public MediaBrowser2.BrowserCallback(); - method public void onChildrenChanged(android.media.MediaBrowser2, java.lang.String, int, android.os.Bundle); - method public void onGetChildrenDone(android.media.MediaBrowser2, java.lang.String, int, int, java.util.List, android.os.Bundle); - method public void onGetItemDone(android.media.MediaBrowser2, java.lang.String, android.media.MediaItem2); - method public void onGetLibraryRootDone(android.media.MediaBrowser2, android.os.Bundle, java.lang.String, android.os.Bundle); - method public void onGetSearchResultDone(android.media.MediaBrowser2, java.lang.String, int, int, java.util.List, android.os.Bundle); - method public void onSearchResultChanged(android.media.MediaBrowser2, java.lang.String, int, android.os.Bundle); - } - public final class MediaCas implements java.lang.AutoCloseable { ctor public MediaCas(int) throws android.media.MediaCasException.UnsupportedCasException; method public void close(); @@ -23378,82 +23307,6 @@ package android.media { field public static final int REGULAR_CODECS = 0; // 0x0 } - public class MediaController2 implements java.lang.AutoCloseable { - ctor public MediaController2(android.content.Context, android.media.SessionToken2, java.util.concurrent.Executor, android.media.MediaController2.ControllerCallback); - method public void addPlaylistItem(int, android.media.MediaItem2); - method public void adjustVolume(int, int); - method public void close(); - method public void fastForward(); - method public long getBufferedPosition(); - method public android.media.MediaItem2 getCurrentMediaItem(); - method public android.media.MediaController2.PlaybackInfo getPlaybackInfo(); - method public float getPlaybackSpeed(); - method public int getPlayerState(); - method public java.util.List getPlaylist(); - method public android.media.MediaMetadata2 getPlaylistMetadata(); - method public long getPosition(); - method public int getRepeatMode(); - method public android.app.PendingIntent getSessionActivity(); - method public android.media.SessionToken2 getSessionToken(); - method public int getShuffleMode(); - method public boolean isConnected(); - method public void pause(); - method public void play(); - method public void playFromMediaId(java.lang.String, android.os.Bundle); - method public void playFromSearch(java.lang.String, android.os.Bundle); - method public void playFromUri(android.net.Uri, android.os.Bundle); - method public void prepare(); - method public void prepareFromMediaId(java.lang.String, android.os.Bundle); - method public void prepareFromSearch(java.lang.String, android.os.Bundle); - method public void prepareFromUri(android.net.Uri, android.os.Bundle); - method public void removePlaylistItem(android.media.MediaItem2); - method public void replacePlaylistItem(int, android.media.MediaItem2); - method public void rewind(); - method public void seekTo(long); - method public void sendCustomCommand(android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver); - method public void setPlaybackSpeed(float); - method public void setPlaylist(java.util.List, android.media.MediaMetadata2); - method public void setRating(java.lang.String, android.media.Rating2); - method public void setRepeatMode(int); - method public void setShuffleMode(int); - method public void setVolumeTo(int, int); - method public void skipToNextItem(); - method public void skipToPlaylistItem(android.media.MediaItem2); - method public void skipToPreviousItem(); - method public void stop(); - method public void updatePlaylistMetadata(android.media.MediaMetadata2); - } - - public static abstract class MediaController2.ControllerCallback { - ctor public MediaController2.ControllerCallback(); - method public void onAllowedCommandsChanged(android.media.MediaController2, android.media.MediaSession2.CommandGroup); - method public void onBufferedPositionChanged(android.media.MediaController2, long); - method public void onConnected(android.media.MediaController2, android.media.MediaSession2.CommandGroup); - method public void onCurrentMediaItemChanged(android.media.MediaController2, android.media.MediaItem2); - method public void onCustomCommand(android.media.MediaController2, android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver); - method public void onCustomLayoutChanged(android.media.MediaController2, java.util.List); - method public void onDisconnected(android.media.MediaController2); - method public void onError(android.media.MediaController2, int, android.os.Bundle); - method public void onPlaybackInfoChanged(android.media.MediaController2, android.media.MediaController2.PlaybackInfo); - method public void onPlaybackSpeedChanged(android.media.MediaController2, float); - method public void onPlayerStateChanged(android.media.MediaController2, int); - method public void onPlaylistChanged(android.media.MediaController2, android.media.MediaPlaylistAgent, java.util.List, android.media.MediaMetadata2); - method public void onPlaylistMetadataChanged(android.media.MediaController2, android.media.MediaPlaylistAgent, android.media.MediaMetadata2); - method public void onPositionChanged(android.media.MediaController2, long, long); - method public void onRepeatModeChanged(android.media.MediaController2, android.media.MediaPlaylistAgent, int); - method public void onShuffleModeChanged(android.media.MediaController2, android.media.MediaPlaylistAgent, int); - } - - public static final class MediaController2.PlaybackInfo { - method public android.media.AudioAttributes getAudioAttributes(); - method public int getControlType(); - method public int getCurrentVolume(); - method public int getMaxVolume(); - method public int getPlaybackType(); - field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1 - field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2 - } - public final class MediaCrypto { ctor public MediaCrypto(java.util.UUID, byte[]) throws android.media.MediaCryptoException; method protected void finalize(); @@ -23854,71 +23707,6 @@ package android.media { field public static final java.lang.String MIMETYPE_VIDEO_VP9 = "video/x-vnd.on2.vp9"; } - public class MediaItem2 { - method public static android.media.MediaItem2 fromBundle(android.content.Context, android.os.Bundle); - method public android.media.DataSourceDesc getDataSourceDesc(); - method public int getFlags(); - method public java.lang.String getMediaId(); - method public android.media.MediaMetadata2 getMetadata(); - method public boolean isBrowsable(); - method public boolean isPlayable(); - method public void setMetadata(android.media.MediaMetadata2); - method public android.os.Bundle toBundle(); - field public static final int FLAG_BROWSABLE = 1; // 0x1 - field public static final int FLAG_PLAYABLE = 2; // 0x2 - } - - public static final class MediaItem2.Builder { - ctor public MediaItem2.Builder(android.content.Context, int); - method public android.media.MediaItem2 build(); - method public android.media.MediaItem2.Builder setDataSourceDesc(android.media.DataSourceDesc); - method public android.media.MediaItem2.Builder setMediaId(java.lang.String); - method public android.media.MediaItem2.Builder setMetadata(android.media.MediaMetadata2); - } - - public abstract class MediaLibraryService2 extends android.media.MediaSessionService2 { - ctor public MediaLibraryService2(); - method public abstract android.media.MediaLibraryService2.MediaLibrarySession onCreateSession(java.lang.String); - field public static final java.lang.String SERVICE_INTERFACE = "android.media.MediaLibraryService2"; - } - - public static final class MediaLibraryService2.LibraryRoot { - ctor public MediaLibraryService2.LibraryRoot(android.content.Context, java.lang.String, android.os.Bundle); - method public android.os.Bundle getExtras(); - method public java.lang.String getRootId(); - field public static final java.lang.String EXTRA_OFFLINE = "android.media.extra.OFFLINE"; - field public static final java.lang.String EXTRA_RECENT = "android.media.extra.RECENT"; - field public static final java.lang.String EXTRA_SUGGESTED = "android.media.extra.SUGGESTED"; - } - - public static final class MediaLibraryService2.MediaLibrarySession extends android.media.MediaSession2 { - method public void notifyChildrenChanged(android.media.MediaSession2.ControllerInfo, java.lang.String, int, android.os.Bundle); - method public void notifyChildrenChanged(java.lang.String, int, android.os.Bundle); - method public void notifySearchResultChanged(android.media.MediaSession2.ControllerInfo, java.lang.String, int, android.os.Bundle); - } - - public static final class MediaLibraryService2.MediaLibrarySession.Builder { - ctor public MediaLibraryService2.MediaLibrarySession.Builder(android.media.MediaLibraryService2, java.util.concurrent.Executor, android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback); - method public android.media.MediaLibraryService2.MediaLibrarySession build(); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setId(java.lang.String); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setPlayer(android.media.MediaPlayerBase); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setPlaylistAgent(android.media.MediaPlaylistAgent); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setSessionActivity(android.app.PendingIntent); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setSessionCallback(java.util.concurrent.Executor, android.media.MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback); - method public android.media.MediaLibraryService2.MediaLibrarySession.Builder setVolumeProvider(android.media.VolumeProvider2); - } - - public static class MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback extends android.media.MediaSession2.SessionCallback { - ctor public MediaLibraryService2.MediaLibrarySession.MediaLibrarySessionCallback(android.content.Context); - method public java.util.List onGetChildren(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String, int, int, android.os.Bundle); - method public android.media.MediaItem2 onGetItem(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String); - method public android.media.MediaLibraryService2.LibraryRoot onGetLibraryRoot(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, android.os.Bundle); - method public java.util.List onGetSearchResult(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String, int, int, android.os.Bundle); - method public void onSearch(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onSubscribe(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onUnsubscribe(android.media.MediaLibraryService2.MediaLibrarySession, android.media.MediaSession2.ControllerInfo, java.lang.String); - } - public final class MediaMetadata implements android.os.Parcelable { method public boolean containsKey(java.lang.String); method public int describeContents(); @@ -23974,79 +23762,6 @@ package android.media { method public android.media.MediaMetadata.Builder putText(java.lang.String, java.lang.CharSequence); } - public final class MediaMetadata2 { - method public boolean containsKey(java.lang.String); - method public static android.media.MediaMetadata2 fromBundle(android.content.Context, android.os.Bundle); - method public android.graphics.Bitmap getBitmap(java.lang.String); - method public android.os.Bundle getExtras(); - method public float getFloat(java.lang.String); - method public long getLong(java.lang.String); - method public java.lang.String getMediaId(); - method public android.media.Rating2 getRating(java.lang.String); - method public java.lang.String getString(java.lang.String); - method public java.lang.CharSequence getText(java.lang.String); - method public java.util.Set keySet(); - method public int size(); - method public android.os.Bundle toBundle(); - field public static final long BT_FOLDER_TYPE_ALBUMS = 2L; // 0x2L - field public static final long BT_FOLDER_TYPE_ARTISTS = 3L; // 0x3L - field public static final long BT_FOLDER_TYPE_GENRES = 4L; // 0x4L - field public static final long BT_FOLDER_TYPE_MIXED = 0L; // 0x0L - field public static final long BT_FOLDER_TYPE_PLAYLISTS = 5L; // 0x5L - field public static final long BT_FOLDER_TYPE_TITLES = 1L; // 0x1L - field public static final long BT_FOLDER_TYPE_YEARS = 6L; // 0x6L - field public static final java.lang.String METADATA_KEY_ADVERTISEMENT = "android.media.metadata.ADVERTISEMENT"; - field public static final java.lang.String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM"; - field public static final java.lang.String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART"; - field public static final java.lang.String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST"; - field public static final java.lang.String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI"; - field public static final java.lang.String METADATA_KEY_ART = "android.media.metadata.ART"; - field public static final java.lang.String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST"; - field public static final java.lang.String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI"; - field public static final java.lang.String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR"; - field public static final java.lang.String METADATA_KEY_BT_FOLDER_TYPE = "android.media.metadata.BT_FOLDER_TYPE"; - field public static final java.lang.String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION"; - field public static final java.lang.String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER"; - field public static final java.lang.String METADATA_KEY_DATE = "android.media.metadata.DATE"; - field public static final java.lang.String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER"; - field public static final java.lang.String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION"; - field public static final java.lang.String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON"; - field public static final java.lang.String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI"; - field public static final java.lang.String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE"; - field public static final java.lang.String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE"; - field public static final java.lang.String METADATA_KEY_DOWNLOAD_STATUS = "android.media.metadata.DOWNLOAD_STATUS"; - field public static final java.lang.String METADATA_KEY_DURATION = "android.media.metadata.DURATION"; - field public static final java.lang.String METADATA_KEY_EXTRAS = "android.media.metadata.EXTRAS"; - field public static final java.lang.String METADATA_KEY_GENRE = "android.media.metadata.GENRE"; - field public static final java.lang.String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID"; - field public static final java.lang.String METADATA_KEY_MEDIA_URI = "android.media.metadata.MEDIA_URI"; - field public static final java.lang.String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS"; - field public static final java.lang.String METADATA_KEY_RADIO_CALLSIGN = "android.media.metadata.RADIO_CALLSIGN"; - field public static final java.lang.String METADATA_KEY_RADIO_FREQUENCY = "android.media.metadata.RADIO_FREQUENCY"; - field public static final java.lang.String METADATA_KEY_RATING = "android.media.metadata.RATING"; - field public static final java.lang.String METADATA_KEY_TITLE = "android.media.metadata.TITLE"; - field public static final java.lang.String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER"; - field public static final java.lang.String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING"; - field public static final java.lang.String METADATA_KEY_WRITER = "android.media.metadata.WRITER"; - field public static final java.lang.String METADATA_KEY_YEAR = "android.media.metadata.YEAR"; - field public static final long STATUS_DOWNLOADED = 2L; // 0x2L - field public static final long STATUS_DOWNLOADING = 1L; // 0x1L - field public static final long STATUS_NOT_DOWNLOADED = 0L; // 0x0L - } - - public static final class MediaMetadata2.Builder { - ctor public MediaMetadata2.Builder(android.content.Context); - ctor public MediaMetadata2.Builder(android.content.Context, android.media.MediaMetadata2); - method public android.media.MediaMetadata2 build(); - method public android.media.MediaMetadata2.Builder putBitmap(java.lang.String, android.graphics.Bitmap); - method public android.media.MediaMetadata2.Builder putFloat(java.lang.String, float); - method public android.media.MediaMetadata2.Builder putLong(java.lang.String, long); - method public android.media.MediaMetadata2.Builder putRating(java.lang.String, android.media.Rating2); - method public android.media.MediaMetadata2.Builder putString(java.lang.String, java.lang.String); - method public android.media.MediaMetadata2.Builder putText(java.lang.String, java.lang.CharSequence); - method public android.media.MediaMetadata2.Builder setExtras(android.os.Bundle); - } - public abstract deprecated class MediaMetadataEditor { method public synchronized void addEditableKey(int); method public abstract void apply(); @@ -24361,263 +24076,6 @@ package android.media { field public static final int MEDIA_TRACK_TYPE_VIDEO = 1; // 0x1 } - public abstract class MediaPlayer2 extends android.media.MediaPlayerBase implements android.media.AudioRouting { - method public abstract void attachAuxEffect(int); - method public abstract void clearDrmEventCallback(); - method public abstract void clearMediaPlayer2EventCallback(); - method public abstract void clearPendingCommands(); - method public abstract void close(); - method public static final android.media.MediaPlayer2 create(); - method public abstract void deselectTrack(int); - method public abstract int getAudioSessionId(); - method public abstract long getBufferedPosition(); - method public abstract long getCurrentPosition(); - method public abstract android.media.MediaPlayer2.DrmInfo getDrmInfo(); - method public abstract android.media.MediaDrm.KeyRequest getDrmKeyRequest(byte[], byte[], java.lang.String, int, java.util.Map) throws android.media.MediaPlayer2.NoDrmSchemeException; - method public abstract java.lang.String getDrmPropertyString(java.lang.String) throws android.media.MediaPlayer2.NoDrmSchemeException; - method public abstract long getDuration(); - method public abstract android.os.PersistableBundle getMetrics(); - method public abstract android.media.PlaybackParams getPlaybackParams(); - method public abstract int getSelectedTrack(int); - method public abstract android.media.SyncParams getSyncParams(); - method public abstract android.media.MediaTimestamp getTimestamp(); - method public abstract java.util.List getTrackInfo(); - method public abstract int getVideoHeight(); - method public abstract int getVideoWidth(); - method public void notifyWhenCommandLabelReached(java.lang.Object); - method public abstract void prepareDrm(java.util.UUID) throws android.media.MediaPlayer2.ProvisioningNetworkErrorException, android.media.MediaPlayer2.ProvisioningServerErrorException, android.media.ResourceBusyException, android.media.UnsupportedSchemeException; - method public abstract byte[] provideDrmKeyResponse(byte[], byte[]) throws android.media.DeniedByServerException, android.media.MediaPlayer2.NoDrmSchemeException; - method public abstract void releaseDrm() throws android.media.MediaPlayer2.NoDrmSchemeException; - method public abstract void restoreDrmKeys(byte[]) throws android.media.MediaPlayer2.NoDrmSchemeException; - method public void seekTo(long); - method public abstract void seekTo(long, int); - method public abstract void selectTrack(int); - method public abstract void setAudioSessionId(int); - method public abstract void setAuxEffectSendLevel(float); - method public abstract void setDrmEventCallback(java.util.concurrent.Executor, android.media.MediaPlayer2.DrmEventCallback); - method public abstract void setDrmPropertyString(java.lang.String, java.lang.String) throws android.media.MediaPlayer2.NoDrmSchemeException; - method public abstract void setMediaPlayer2EventCallback(java.util.concurrent.Executor, android.media.MediaPlayer2.MediaPlayer2EventCallback); - method public abstract void setOnDrmConfigHelper(android.media.MediaPlayer2.OnDrmConfigHelper); - method public abstract void setPlaybackParams(android.media.PlaybackParams); - method public abstract void setSurface(android.view.Surface); - method public abstract void setSyncParams(android.media.SyncParams); - field public static final int CALL_COMPLETED_ATTACH_AUX_EFFECT = 1; // 0x1 - field public static final int CALL_COMPLETED_DESELECT_TRACK = 2; // 0x2 - field public static final int CALL_COMPLETED_LOOP_CURRENT = 3; // 0x3 - field public static final int CALL_COMPLETED_PAUSE = 4; // 0x4 - field public static final int CALL_COMPLETED_PLAY = 5; // 0x5 - field public static final int CALL_COMPLETED_PREPARE = 6; // 0x6 - field public static final int CALL_COMPLETED_RELEASE_DRM = 12; // 0xc - field public static final int CALL_COMPLETED_RESTORE_DRM_KEYS = 13; // 0xd - field public static final int CALL_COMPLETED_SEEK_TO = 14; // 0xe - field public static final int CALL_COMPLETED_SELECT_TRACK = 15; // 0xf - field public static final int CALL_COMPLETED_SET_AUDIO_ATTRIBUTES = 16; // 0x10 - field public static final int CALL_COMPLETED_SET_AUDIO_SESSION_ID = 17; // 0x11 - field public static final int CALL_COMPLETED_SET_AUX_EFFECT_SEND_LEVEL = 18; // 0x12 - field public static final int CALL_COMPLETED_SET_DATA_SOURCE = 19; // 0x13 - field public static final int CALL_COMPLETED_SET_NEXT_DATA_SOURCE = 22; // 0x16 - field public static final int CALL_COMPLETED_SET_NEXT_DATA_SOURCES = 23; // 0x17 - field public static final int CALL_COMPLETED_SET_PLAYBACK_PARAMS = 24; // 0x18 - field public static final int CALL_COMPLETED_SET_PLAYBACK_SPEED = 25; // 0x19 - field public static final int CALL_COMPLETED_SET_PLAYER_VOLUME = 26; // 0x1a - field public static final int CALL_COMPLETED_SET_SURFACE = 27; // 0x1b - field public static final int CALL_COMPLETED_SET_SYNC_PARAMS = 28; // 0x1c - field public static final int CALL_COMPLETED_SKIP_TO_NEXT = 29; // 0x1d - field public static final int CALL_STATUS_BAD_VALUE = 2; // 0x2 - field public static final int CALL_STATUS_ERROR_IO = 4; // 0x4 - field public static final int CALL_STATUS_ERROR_UNKNOWN = -2147483648; // 0x80000000 - field public static final int CALL_STATUS_INVALID_OPERATION = 1; // 0x1 - field public static final int CALL_STATUS_NO_DRM_SCHEME = 5; // 0x5 - field public static final int CALL_STATUS_NO_ERROR = 0; // 0x0 - field public static final int CALL_STATUS_PERMISSION_DENIED = 3; // 0x3 - field public static final int MEDIA_ERROR_IO = -1004; // 0xfffffc14 - field public static final int MEDIA_ERROR_MALFORMED = -1007; // 0xfffffc11 - field public static final int MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK = 200; // 0xc8 - field public static final int MEDIA_ERROR_TIMED_OUT = -110; // 0xffffff92 - field public static final int MEDIA_ERROR_UNKNOWN = 1; // 0x1 - field public static final int MEDIA_ERROR_UNSUPPORTED = -1010; // 0xfffffc0e - field public static final int MEDIA_INFO_AUDIO_NOT_PLAYING = 804; // 0x324 - field public static final int MEDIA_INFO_AUDIO_RENDERING_START = 4; // 0x4 - field public static final int MEDIA_INFO_BAD_INTERLEAVING = 800; // 0x320 - field public static final int MEDIA_INFO_BUFFERING_END = 702; // 0x2be - field public static final int MEDIA_INFO_BUFFERING_START = 701; // 0x2bd - field public static final int MEDIA_INFO_BUFFERING_UPDATE = 704; // 0x2c0 - field public static final int MEDIA_INFO_METADATA_UPDATE = 802; // 0x322 - field public static final int MEDIA_INFO_NOT_SEEKABLE = 801; // 0x321 - field public static final int MEDIA_INFO_PLAYBACK_COMPLETE = 5; // 0x5 - field public static final int MEDIA_INFO_PLAYLIST_END = 6; // 0x6 - field public static final int MEDIA_INFO_PREPARED = 100; // 0x64 - field public static final int MEDIA_INFO_STARTED_AS_NEXT = 2; // 0x2 - field public static final int MEDIA_INFO_SUBTITLE_TIMED_OUT = 902; // 0x386 - field public static final int MEDIA_INFO_UNKNOWN = 1; // 0x1 - field public static final int MEDIA_INFO_UNSUPPORTED_SUBTITLE = 901; // 0x385 - field public static final int MEDIA_INFO_VIDEO_NOT_PLAYING = 805; // 0x325 - field public static final int MEDIA_INFO_VIDEO_RENDERING_START = 3; // 0x3 - field public static final int MEDIA_INFO_VIDEO_TRACK_LAGGING = 700; // 0x2bc - field public static final int PREPARE_DRM_STATUS_PREPARATION_ERROR = 3; // 0x3 - field public static final int PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR = 1; // 0x1 - field public static final int PREPARE_DRM_STATUS_PROVISIONING_SERVER_ERROR = 2; // 0x2 - field public static final int PREPARE_DRM_STATUS_SUCCESS = 0; // 0x0 - field public static final int SEEK_CLOSEST = 3; // 0x3 - field public static final int SEEK_CLOSEST_SYNC = 2; // 0x2 - field public static final int SEEK_NEXT_SYNC = 1; // 0x1 - field public static final int SEEK_PREVIOUS_SYNC = 0; // 0x0 - field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1; // 0x1 - } - - public static abstract class MediaPlayer2.DrmEventCallback { - ctor public MediaPlayer2.DrmEventCallback(); - method public void onDrmInfo(android.media.MediaPlayer2, android.media.DataSourceDesc, android.media.MediaPlayer2.DrmInfo); - method public void onDrmPrepared(android.media.MediaPlayer2, android.media.DataSourceDesc, int); - } - - public static abstract class MediaPlayer2.DrmInfo { - ctor public MediaPlayer2.DrmInfo(); - method public abstract java.util.Map getPssh(); - method public abstract java.util.List getSupportedSchemes(); - } - - public static abstract class MediaPlayer2.MediaPlayer2EventCallback { - ctor public MediaPlayer2.MediaPlayer2EventCallback(); - method public void onCallCompleted(android.media.MediaPlayer2, android.media.DataSourceDesc, int, int); - method public void onCommandLabelReached(android.media.MediaPlayer2, java.lang.Object); - method public void onError(android.media.MediaPlayer2, android.media.DataSourceDesc, int, int); - method public void onInfo(android.media.MediaPlayer2, android.media.DataSourceDesc, int, int); - method public void onMediaTimeChanged(android.media.MediaPlayer2, android.media.DataSourceDesc, android.media.MediaTimestamp); - method public void onTimedMetaDataAvailable(android.media.MediaPlayer2, android.media.DataSourceDesc, android.media.TimedMetaData); - method public void onVideoSizeChanged(android.media.MediaPlayer2, android.media.DataSourceDesc, int, int); - } - - public static final class MediaPlayer2.MetricsConstants { - field public static final java.lang.String CODEC_AUDIO = "android.media.mediaplayer.audio.codec"; - field public static final java.lang.String CODEC_VIDEO = "android.media.mediaplayer.video.codec"; - field public static final java.lang.String DURATION = "android.media.mediaplayer.durationMs"; - field public static final java.lang.String ERRORS = "android.media.mediaplayer.err"; - field public static final java.lang.String ERROR_CODE = "android.media.mediaplayer.errcode"; - field public static final java.lang.String FRAMES = "android.media.mediaplayer.frames"; - field public static final java.lang.String FRAMES_DROPPED = "android.media.mediaplayer.dropped"; - field public static final java.lang.String HEIGHT = "android.media.mediaplayer.height"; - field public static final java.lang.String MIME_TYPE_AUDIO = "android.media.mediaplayer.audio.mime"; - field public static final java.lang.String MIME_TYPE_VIDEO = "android.media.mediaplayer.video.mime"; - field public static final java.lang.String PLAYING = "android.media.mediaplayer.playingMs"; - field public static final java.lang.String WIDTH = "android.media.mediaplayer.width"; - } - - public static abstract class MediaPlayer2.NoDrmSchemeException extends android.media.MediaDrmException { - ctor protected MediaPlayer2.NoDrmSchemeException(java.lang.String); - } - - public static abstract interface MediaPlayer2.OnDrmConfigHelper { - method public abstract void onDrmConfig(android.media.MediaPlayer2, android.media.DataSourceDesc); - } - - public static abstract class MediaPlayer2.ProvisioningNetworkErrorException extends android.media.MediaDrmException { - ctor protected MediaPlayer2.ProvisioningNetworkErrorException(java.lang.String); - } - - public static abstract class MediaPlayer2.ProvisioningServerErrorException extends android.media.MediaDrmException { - ctor protected MediaPlayer2.ProvisioningServerErrorException(java.lang.String); - } - - public static abstract class MediaPlayer2.TrackInfo { - ctor public MediaPlayer2.TrackInfo(); - method public abstract android.media.MediaFormat getFormat(); - method public abstract java.lang.String getLanguage(); - method public abstract int getTrackType(); - method public abstract java.lang.String toString(); - field public static final int MEDIA_TRACK_TYPE_AUDIO = 2; // 0x2 - field public static final int MEDIA_TRACK_TYPE_METADATA = 5; // 0x5 - field public static final int MEDIA_TRACK_TYPE_SUBTITLE = 4; // 0x4 - field public static final int MEDIA_TRACK_TYPE_UNKNOWN = 0; // 0x0 - field public static final int MEDIA_TRACK_TYPE_VIDEO = 1; // 0x1 - } - - public abstract class MediaPlayerBase implements java.lang.AutoCloseable { - ctor public MediaPlayerBase(); - method public abstract android.media.AudioAttributes getAudioAttributes(); - method public long getBufferedPosition(); - method public abstract int getBufferingState(); - method public abstract android.media.DataSourceDesc getCurrentDataSource(); - method public long getCurrentPosition(); - method public long getDuration(); - method public float getMaxPlayerVolume(); - method public float getPlaybackSpeed(); - method public abstract int getPlayerState(); - method public abstract float getPlayerVolume(); - method public boolean isReversePlaybackSupported(); - method public abstract void loopCurrent(boolean); - method public abstract void pause(); - method public abstract void play(); - method public abstract void prepare(); - method public abstract void registerPlayerEventCallback(java.util.concurrent.Executor, android.media.MediaPlayerBase.PlayerEventCallback); - method public abstract void reset(); - method public abstract void seekTo(long); - method public abstract void setAudioAttributes(android.media.AudioAttributes); - method public abstract void setDataSource(android.media.DataSourceDesc); - method public abstract void setNextDataSource(android.media.DataSourceDesc); - method public abstract void setNextDataSources(java.util.List); - method public abstract void setPlaybackSpeed(float); - method public abstract void setPlayerVolume(float); - method public abstract void skipToNext(); - method public abstract void unregisterPlayerEventCallback(android.media.MediaPlayerBase.PlayerEventCallback); - field public static final int BUFFERING_STATE_BUFFERING_AND_PLAYABLE = 1; // 0x1 - field public static final int BUFFERING_STATE_BUFFERING_AND_STARVED = 2; // 0x2 - field public static final int BUFFERING_STATE_BUFFERING_COMPLETE = 3; // 0x3 - field public static final int BUFFERING_STATE_UNKNOWN = 0; // 0x0 - field public static final int PLAYER_STATE_ERROR = 3; // 0x3 - field public static final int PLAYER_STATE_IDLE = 0; // 0x0 - field public static final int PLAYER_STATE_PAUSED = 1; // 0x1 - field public static final int PLAYER_STATE_PLAYING = 2; // 0x2 - field public static final long UNKNOWN_TIME = -1L; // 0xffffffffffffffffL - } - - public static abstract class MediaPlayerBase.PlayerEventCallback { - ctor public MediaPlayerBase.PlayerEventCallback(); - method public void onBufferingStateChanged(android.media.MediaPlayerBase, android.media.DataSourceDesc, int); - method public void onCurrentDataSourceChanged(android.media.MediaPlayerBase, android.media.DataSourceDesc); - method public void onMediaPrepared(android.media.MediaPlayerBase, android.media.DataSourceDesc); - method public void onPlayerStateChanged(android.media.MediaPlayerBase, int); - } - - public abstract class MediaPlaylistAgent { - ctor public MediaPlaylistAgent(android.content.Context); - method public void addPlaylistItem(int, android.media.MediaItem2); - method public java.util.List getPlaylist(); - method public android.media.MediaMetadata2 getPlaylistMetadata(); - method public int getRepeatMode(); - method public int getShuffleMode(); - method public final void notifyPlaylistChanged(); - method public final void notifyPlaylistMetadataChanged(); - method public final void notifyRepeatModeChanged(); - method public final void notifyShuffleModeChanged(); - method public final void registerPlaylistEventCallback(java.util.concurrent.Executor, android.media.MediaPlaylistAgent.PlaylistEventCallback); - method public void removePlaylistItem(android.media.MediaItem2); - method public void replacePlaylistItem(int, android.media.MediaItem2); - method public void setPlaylist(java.util.List, android.media.MediaMetadata2); - method public void setRepeatMode(int); - method public void setShuffleMode(int); - method public void skipToNextItem(); - method public void skipToPlaylistItem(android.media.MediaItem2); - method public void skipToPreviousItem(); - method public final void unregisterPlaylistEventCallback(android.media.MediaPlaylistAgent.PlaylistEventCallback); - method public void updatePlaylistMetadata(android.media.MediaMetadata2); - field public static final int REPEAT_MODE_ALL = 2; // 0x2 - field public static final int REPEAT_MODE_GROUP = 3; // 0x3 - field public static final int REPEAT_MODE_NONE = 0; // 0x0 - field public static final int REPEAT_MODE_ONE = 1; // 0x1 - field public static final int SHUFFLE_MODE_ALL = 1; // 0x1 - field public static final int SHUFFLE_MODE_GROUP = 2; // 0x2 - field public static final int SHUFFLE_MODE_NONE = 0; // 0x0 - } - - public static abstract class MediaPlaylistAgent.PlaylistEventCallback { - ctor public MediaPlaylistAgent.PlaylistEventCallback(); - method public void onPlaylistChanged(android.media.MediaPlaylistAgent, java.util.List, android.media.MediaMetadata2); - method public void onPlaylistMetadataChanged(android.media.MediaPlaylistAgent, android.media.MediaMetadata2); - method public void onRepeatModeChanged(android.media.MediaPlaylistAgent, int); - method public void onShuffleModeChanged(android.media.MediaPlaylistAgent, int); - } - public class MediaRecorder implements android.media.AudioRouting { ctor public MediaRecorder(); method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); @@ -24894,187 +24352,6 @@ package android.media { method public abstract void onScanCompleted(java.lang.String, android.net.Uri); } - public class MediaSession2 implements java.lang.AutoCloseable { - method public void addPlaylistItem(int, android.media.MediaItem2); - method public void clearOnDataSourceMissingHelper(); - method public void close(); - method public void fastForward(); - method public java.util.List getConnectedControllers(); - method public android.media.MediaItem2 getCurrentMediaItem(); - method public float getPlaybackSpeed(); - method public android.media.MediaPlayerBase getPlayer(); - method public java.util.List getPlaylist(); - method public android.media.MediaPlaylistAgent getPlaylistAgent(); - method public android.media.MediaMetadata2 getPlaylistMetadata(); - method public int getRepeatMode(); - method public int getShuffleMode(); - method public android.media.SessionToken2 getToken(); - method public android.media.VolumeProvider2 getVolumeProvider(); - method public void notifyError(int, android.os.Bundle); - method public void pause(); - method public void play(); - method public void prepare(); - method public void removePlaylistItem(android.media.MediaItem2); - method public void replacePlaylistItem(int, android.media.MediaItem2); - method public void rewind(); - method public void seekTo(long); - method public void sendCustomCommand(android.media.MediaSession2.Command, android.os.Bundle); - method public void sendCustomCommand(android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver); - method public void setAllowedCommands(android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.CommandGroup); - method public void setAudioFocusRequest(android.media.AudioFocusRequest); - method public void setCustomLayout(android.media.MediaSession2.ControllerInfo, java.util.List); - method public void setOnDataSourceMissingHelper(android.media.MediaSession2.OnDataSourceMissingHelper); - method public void setPlaybackSpeed(float); - method public void setPlaylist(java.util.List, android.media.MediaMetadata2); - method public void setRepeatMode(int); - method public void setShuffleMode(int); - method public void skipToNextItem(); - method public void skipToPlaylistItem(android.media.MediaItem2); - method public void skipToPreviousItem(); - method public void stop(); - method public void updatePlayer(android.media.MediaPlayerBase, android.media.MediaPlaylistAgent, android.media.VolumeProvider2); - method public void updatePlaylistMetadata(android.media.MediaMetadata2); - field public static final int COMMAND_CODE_BROWSER = 28; // 0x1c - field public static final int COMMAND_CODE_CUSTOM = 0; // 0x0 - field public static final int COMMAND_CODE_PLAYBACK_ADJUST_VOLUME = 11; // 0xb - field public static final int COMMAND_CODE_PLAYBACK_FAST_FORWARD = 7; // 0x7 - field public static final int COMMAND_CODE_PLAYBACK_PAUSE = 2; // 0x2 - field public static final int COMMAND_CODE_PLAYBACK_PLAY = 1; // 0x1 - field public static final int COMMAND_CODE_PLAYBACK_PREPARE = 6; // 0x6 - field public static final int COMMAND_CODE_PLAYBACK_REWIND = 8; // 0x8 - field public static final int COMMAND_CODE_PLAYBACK_SEEK_TO = 9; // 0x9 - field public static final int COMMAND_CODE_PLAYBACK_SET_VOLUME = 10; // 0xa - field public static final int COMMAND_CODE_PLAYBACK_SKIP_NEXT_ITEM = 4; // 0x4 - field public static final int COMMAND_CODE_PLAYBACK_SKIP_PREV_ITEM = 5; // 0x5 - field public static final int COMMAND_CODE_PLAYBACK_STOP = 3; // 0x3 - field public static final int COMMAND_CODE_PLAYLIST_ADD_ITEM = 15; // 0xf - field public static final int COMMAND_CODE_PLAYLIST_GET_LIST = 18; // 0x12 - field public static final int COMMAND_CODE_PLAYLIST_GET_LIST_METADATA = 20; // 0x14 - field public static final int COMMAND_CODE_PLAYLIST_REMOVE_ITEM = 16; // 0x10 - field public static final int COMMAND_CODE_PLAYLIST_REPLACE_ITEM = 17; // 0x11 - field public static final int COMMAND_CODE_PLAYLIST_SET_LIST = 19; // 0x13 - field public static final int COMMAND_CODE_PLAYLIST_SET_LIST_METADATA = 21; // 0x15 - field public static final int COMMAND_CODE_PLAYLIST_SET_REPEAT_MODE = 14; // 0xe - field public static final int COMMAND_CODE_PLAYLIST_SET_SHUFFLE_MODE = 13; // 0xd - field public static final int COMMAND_CODE_PLAYLIST_SKIP_TO_PLAYLIST_ITEM = 12; // 0xc - field public static final int COMMAND_CODE_PLAY_FROM_MEDIA_ID = 22; // 0x16 - field public static final int COMMAND_CODE_PLAY_FROM_SEARCH = 24; // 0x18 - field public static final int COMMAND_CODE_PLAY_FROM_URI = 23; // 0x17 - field public static final int COMMAND_CODE_PREPARE_FROM_MEDIA_ID = 25; // 0x19 - field public static final int COMMAND_CODE_PREPARE_FROM_SEARCH = 27; // 0x1b - field public static final int COMMAND_CODE_PREPARE_FROM_URI = 26; // 0x1a - field public static final int ERROR_CODE_ACTION_ABORTED = 10; // 0xa - field public static final int ERROR_CODE_APP_ERROR = 1; // 0x1 - field public static final int ERROR_CODE_AUTHENTICATION_EXPIRED = 3; // 0x3 - field public static final int ERROR_CODE_CONCURRENT_STREAM_LIMIT = 5; // 0x5 - field public static final int ERROR_CODE_CONTENT_ALREADY_PLAYING = 8; // 0x8 - field public static final int ERROR_CODE_END_OF_QUEUE = 11; // 0xb - field public static final int ERROR_CODE_NOT_AVAILABLE_IN_REGION = 7; // 0x7 - field public static final int ERROR_CODE_NOT_SUPPORTED = 2; // 0x2 - field public static final int ERROR_CODE_PARENTAL_CONTROL_RESTRICTED = 6; // 0x6 - field public static final int ERROR_CODE_PREMIUM_ACCOUNT_REQUIRED = 4; // 0x4 - field public static final int ERROR_CODE_SETUP_REQUIRED = 12; // 0xc - field public static final int ERROR_CODE_SKIP_LIMIT_REACHED = 9; // 0x9 - field public static final int ERROR_CODE_UNKNOWN_ERROR = 0; // 0x0 - } - - public static final class MediaSession2.Builder { - ctor public MediaSession2.Builder(android.content.Context); - method public android.media.MediaSession2 build(); - method public android.media.MediaSession2.Builder setId(java.lang.String); - method public android.media.MediaSession2.Builder setPlayer(android.media.MediaPlayerBase); - method public android.media.MediaSession2.Builder setPlaylistAgent(android.media.MediaPlaylistAgent); - method public android.media.MediaSession2.Builder setSessionActivity(android.app.PendingIntent); - method public android.media.MediaSession2.Builder setSessionCallback(java.util.concurrent.Executor, android.media.MediaSession2.SessionCallback); - method public android.media.MediaSession2.Builder setVolumeProvider(android.media.VolumeProvider2); - } - - public static final class MediaSession2.Command { - ctor public MediaSession2.Command(android.content.Context, int); - ctor public MediaSession2.Command(android.content.Context, java.lang.String, android.os.Bundle); - method public int getCommandCode(); - method public java.lang.String getCustomCommand(); - method public android.os.Bundle getExtras(); - } - - public static final class MediaSession2.CommandButton { - method public android.media.MediaSession2.Command getCommand(); - method public java.lang.String getDisplayName(); - method public android.os.Bundle getExtras(); - method public int getIconResId(); - method public boolean isEnabled(); - } - - public static final class MediaSession2.CommandButton.Builder { - ctor public MediaSession2.CommandButton.Builder(android.content.Context); - method public android.media.MediaSession2.CommandButton build(); - method public android.media.MediaSession2.CommandButton.Builder setCommand(android.media.MediaSession2.Command); - method public android.media.MediaSession2.CommandButton.Builder setDisplayName(java.lang.String); - method public android.media.MediaSession2.CommandButton.Builder setEnabled(boolean); - method public android.media.MediaSession2.CommandButton.Builder setExtras(android.os.Bundle); - method public android.media.MediaSession2.CommandButton.Builder setIconResId(int); - } - - public static final class MediaSession2.CommandGroup { - ctor public MediaSession2.CommandGroup(android.content.Context); - ctor public MediaSession2.CommandGroup(android.content.Context, android.media.MediaSession2.CommandGroup); - method public void addAllPredefinedCommands(); - method public void addCommand(android.media.MediaSession2.Command); - method public java.util.List getCommands(); - method public boolean hasCommand(android.media.MediaSession2.Command); - method public boolean hasCommand(int); - method public void removeCommand(android.media.MediaSession2.Command); - } - - public static final class MediaSession2.ControllerInfo { - method public java.lang.String getPackageName(); - method public int getUid(); - method public boolean isTrusted(); - } - - public static abstract interface MediaSession2.OnDataSourceMissingHelper { - method public abstract android.media.DataSourceDesc onDataSourceMissing(android.media.MediaSession2, android.media.MediaItem2); - } - - public static abstract class MediaSession2.SessionCallback { - ctor public MediaSession2.SessionCallback(android.content.Context); - method public void onBufferingStateChanged(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2, int); - method public boolean onCommandRequest(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.Command); - method public android.media.MediaSession2.CommandGroup onConnect(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo); - method public void onCurrentMediaItemChanged(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2); - method public void onCustomCommand(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.media.MediaSession2.Command, android.os.Bundle, android.os.ResultReceiver); - method public void onDisconnected(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo); - method public void onMediaPrepared(android.media.MediaSession2, android.media.MediaPlayerBase, android.media.MediaItem2); - method public void onPlayFromMediaId(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onPlayFromSearch(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onPlayFromUri(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.net.Uri, android.os.Bundle); - method public void onPlayerStateChanged(android.media.MediaSession2, android.media.MediaPlayerBase, int); - method public void onPlaylistChanged(android.media.MediaSession2, android.media.MediaPlaylistAgent, java.util.List, android.media.MediaMetadata2); - method public void onPlaylistMetadataChanged(android.media.MediaSession2, android.media.MediaPlaylistAgent, android.media.MediaMetadata2); - method public void onPrepareFromMediaId(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onPrepareFromSearch(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, java.lang.String, android.os.Bundle); - method public void onPrepareFromUri(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, android.net.Uri, android.os.Bundle); - method public void onRepeatModeChanged(android.media.MediaSession2, android.media.MediaPlaylistAgent, int); - method public void onSetRating(android.media.MediaSession2, android.media.MediaSession2.ControllerInfo, java.lang.String, android.media.Rating2); - method public void onShuffleModeChanged(android.media.MediaSession2, android.media.MediaPlaylistAgent, int); - } - - public abstract class MediaSessionService2 extends android.app.Service { - ctor public MediaSessionService2(); - method public final android.media.MediaSession2 getSession(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract android.media.MediaSession2 onCreateSession(java.lang.String); - method public android.media.MediaSessionService2.MediaNotification onUpdateNotification(); - field public static final java.lang.String SERVICE_INTERFACE = "android.media.MediaSessionService2"; - field public static final java.lang.String SERVICE_META_DATA = "android.media.session"; - } - - public static class MediaSessionService2.MediaNotification { - ctor public MediaSessionService2.MediaNotification(android.content.Context, int, android.app.Notification); - method public android.app.Notification getNotification(); - method public int getNotificationId(); - } - public final class MediaSync { ctor public MediaSync(); method public android.view.Surface createInputSurface(); @@ -25367,22 +24644,6 @@ package android.media { field public static final int URI_COLUMN_INDEX = 2; // 0x2 } - public final class SessionToken2 { - ctor public SessionToken2(android.content.Context, java.lang.String, java.lang.String); - method public static android.media.SessionToken2 fromBundle(android.content.Context, android.os.Bundle); - method public java.lang.String getId(); - method public java.lang.String getPackageName(); - method public int getType(); - method public int getUid(); - method public android.os.Bundle toBundle(); - field public static final int TYPE_LIBRARY_SERVICE = 2; // 0x2 - field public static final int TYPE_SESSION = 0; // 0x0 - field public static final int TYPE_SESSION_SERVICE = 1; // 0x1 - } - - public static abstract class SessionToken2.TokenType implements java.lang.annotation.Annotation { - } - public class SoundPool { ctor public deprecated SoundPool(int, int, int); method public final void autoPause(); @@ -25586,19 +24847,6 @@ package android.media { field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1 } - public abstract class VolumeProvider2 { - ctor public VolumeProvider2(android.content.Context, int, int, int); - method public final int getControlType(); - method public final int getCurrentVolume(); - method public final int getMaxVolume(); - method public void onAdjustVolume(int); - method public void onSetVolumeTo(int); - method public final void setCurrentVolume(int); - field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2 - field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0 - field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1 - } - public final class VolumeShaper implements java.lang.AutoCloseable { method public void apply(android.media.VolumeShaper.Operation); method public void close(); @@ -26541,23 +25789,14 @@ package android.media.session { public final class MediaSessionManager { method public void addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName); method public void addOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, android.content.ComponentName, android.os.Handler); - method public void addOnSessionTokensChangedListener(java.util.concurrent.Executor, android.media.session.MediaSessionManager.OnSessionTokensChangedListener); - method public java.util.List getActiveSessionTokens(); method public java.util.List getActiveSessions(android.content.ComponentName); - method public java.util.List getAllSessionTokens(); - method public java.util.List getSessionServiceTokens(); method public void removeOnActiveSessionsChangedListener(android.media.session.MediaSessionManager.OnActiveSessionsChangedListener); - method public void removeOnSessionTokensChangedListener(android.media.session.MediaSessionManager.OnSessionTokensChangedListener); } public static abstract interface MediaSessionManager.OnActiveSessionsChangedListener { method public abstract void onActiveSessionsChanged(java.util.List); } - public static abstract interface MediaSessionManager.OnSessionTokensChangedListener { - method public abstract void onSessionTokensChanged(java.util.List); - } - public final class PlaybackState implements android.os.Parcelable { method public int describeContents(); method public long getActions(); @@ -53432,20 +52671,6 @@ package android.widget { method public void update(); } - public class MediaControlView2 extends android.view.ViewGroup { - ctor public MediaControlView2(android.content.Context); - ctor public MediaControlView2(android.content.Context, android.util.AttributeSet); - ctor public MediaControlView2(android.content.Context, android.util.AttributeSet, int); - ctor public MediaControlView2(android.content.Context, android.util.AttributeSet, int, int); - method public void requestPlayButtonFocus(); - method public void setMediaSessionToken(android.media.SessionToken2); - method public void setOnFullScreenListener(android.widget.MediaControlView2.OnFullScreenListener); - } - - public static abstract interface MediaControlView2.OnFullScreenListener { - method public abstract void onFullScreen(android.view.View, boolean); - } - public class MediaController extends android.widget.FrameLayout { ctor public MediaController(android.content.Context, android.util.AttributeSet); ctor public MediaController(android.content.Context, boolean); @@ -54836,27 +54061,6 @@ package android.widget { method public void suspend(); } - public class VideoView2 extends android.view.ViewGroup { - ctor public VideoView2(android.content.Context); - ctor public VideoView2(android.content.Context, android.util.AttributeSet); - ctor public VideoView2(android.content.Context, android.util.AttributeSet, int); - ctor public VideoView2(android.content.Context, android.util.AttributeSet, int, int); - method public android.widget.MediaControlView2 getMediaControlView2(); - method public android.media.SessionToken2 getMediaSessionToken(); - method public int getViewType(); - method public boolean isSubtitleEnabled(); - method public void setAudioAttributes(android.media.AudioAttributes); - method public void setAudioFocusRequest(int); - method public void setDataSource(android.media.DataSourceDesc); - method public void setMediaControlView2(android.widget.MediaControlView2, long); - method public void setMediaItem(android.media.MediaItem2); - method public void setSpeed(float); - method public void setSubtitleEnabled(boolean); - method public void setViewType(int); - field public static final int VIEW_TYPE_SURFACEVIEW = 1; // 0x1 - field public static final int VIEW_TYPE_TEXTUREVIEW = 2; // 0x2 - } - public class ViewAnimator extends android.widget.FrameLayout { ctor public ViewAnimator(android.content.Context); ctor public ViewAnimator(android.content.Context, android.util.AttributeSet); diff --git a/core/java/android/widget/MediaControlView2.java b/core/java/android/widget/MediaControlView2.java index 3ec8ab9240bd2..c41c401281dc8 100644 --- a/core/java/android/widget/MediaControlView2.java +++ b/core/java/android/widget/MediaControlView2.java @@ -33,6 +33,7 @@ import java.lang.annotation.RetentionPolicy; // TODO: Use link annotation to refer VideoView2 once VideoView2 became unhidden. /** + * @hide * A View that contains the controls for MediaPlayer2. * It provides a wide range of UI including buttons such as "Play/Pause", "Rewind", "Fast Forward", * "Subtitle", "Full Screen", and it is also possible to add multiple custom buttons. diff --git a/core/java/android/widget/VideoView2.java b/core/java/android/widget/VideoView2.java index 6f08dc22aff1d..73f7a47ac37b9 100644 --- a/core/java/android/widget/VideoView2.java +++ b/core/java/android/widget/VideoView2.java @@ -47,6 +47,7 @@ import java.util.concurrent.Executor; // TODO: Replace MediaSession wtih MediaSession2 once MediaSession2 is submitted. /** + * @hide * Displays a video file. VideoView2 class is a View class which is wrapping {@link MediaPlayer2} * so that developers can easily implement a video rendering application. * diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 1536bb6880735..e408a115787c8 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -1352,6 +1352,7 @@ public class AudioManager { //==================================================================== // Offload query /** + * @hide * Returns whether offloaded playback of an audio format is supported on the device. * Offloaded playback is where the decoding of an audio stream is not competing with other * software resources. In general, it is supported by dedicated hardware, such as audio DSPs. diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index 2d5fad5dde5b1..bbb84d45b469d 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -896,6 +896,7 @@ public class AudioTrack extends PlayerBase } /** + * @hide * Sets whether this track will play through the offloaded audio path. * When set to true, at build time, the audio format will be checked against * {@link AudioManager#isOffloadedPlaybackSupported(AudioFormat)} to verify the audio format @@ -2978,6 +2979,7 @@ public class AudioTrack extends PlayerBase } /** + * @hide * Abstract class to receive event notification about the stream playback. * See {@link AudioTrack#setStreamEventCallback(Executor, StreamEventCallback)} to register * the callback on the given {@link AudioTrack} instance. @@ -3011,6 +3013,7 @@ public class AudioTrack extends PlayerBase private final Object mStreamEventCbLock = new Object(); /** + * @hide * Sets the callback for the notification of stream events. * @param executor {@link Executor} to handle the callbacks * @param eventCallback the callback to receive the stream event notifications @@ -3030,6 +3033,7 @@ public class AudioTrack extends PlayerBase } /** + * @hide * Unregisters the callback for notification of stream events, previously set * by {@link #setStreamEventCallback(Executor, StreamEventCallback)}. */ diff --git a/media/java/android/media/DataSourceDesc.java b/media/java/android/media/DataSourceDesc.java index 6d58a9440996d..a53fa11f17772 100644 --- a/media/java/android/media/DataSourceDesc.java +++ b/media/java/android/media/DataSourceDesc.java @@ -40,6 +40,7 @@ import java.util.List; import java.util.Map; /** + * @hide * Structure for data source descriptor. * * Used by {@link MediaPlayer2#setDataSource(DataSourceDesc)} diff --git a/media/java/android/media/Media2DataSource.java b/media/java/android/media/Media2DataSource.java index 8ee4a705b446b..08df632a99b3b 100644 --- a/media/java/android/media/Media2DataSource.java +++ b/media/java/android/media/Media2DataSource.java @@ -21,6 +21,7 @@ import java.io.Closeable; import java.io.IOException; /** + * @hide * For supplying media data to the framework. Implement this if your app has * special requirements for the way media data is obtained. * diff --git a/media/java/android/media/MediaBrowser2.java b/media/java/android/media/MediaBrowser2.java index cf3395858534e..b21a1ac2e1536 100644 --- a/media/java/android/media/MediaBrowser2.java +++ b/media/java/android/media/MediaBrowser2.java @@ -30,6 +30,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * Browses media content offered by a {@link MediaLibraryService2}. */ public class MediaBrowser2 extends MediaController2 { diff --git a/media/java/android/media/MediaController2.java b/media/java/android/media/MediaController2.java index 20c320947f453..9d5b74c33050d 100644 --- a/media/java/android/media/MediaController2.java +++ b/media/java/android/media/MediaController2.java @@ -40,6 +40,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * Allows an app to interact with an active {@link MediaSession2} or a * {@link MediaSessionService2} in any status. Media buttons and other commands can be sent to * the session. diff --git a/media/java/android/media/MediaItem2.java b/media/java/android/media/MediaItem2.java index b50c3e4bcd0b1..25c7ef1c8e91e 100644 --- a/media/java/android/media/MediaItem2.java +++ b/media/java/android/media/MediaItem2.java @@ -28,6 +28,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** + * @hide * A class with information on a single media item with the metadata information. * Media item are application dependent so we cannot guarantee that they contain the right values. *

diff --git a/media/java/android/media/MediaLibraryService2.java b/media/java/android/media/MediaLibraryService2.java index 6cab430170342..78d56c5ff6bab 100644 --- a/media/java/android/media/MediaLibraryService2.java +++ b/media/java/android/media/MediaLibraryService2.java @@ -34,6 +34,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * Base class for media library services. *

* Media library services enable applications to browse media content provided by an application diff --git a/media/java/android/media/MediaMetadata2.java b/media/java/android/media/MediaMetadata2.java index fb1206515ef5e..eb330471801e1 100644 --- a/media/java/android/media/MediaMetadata2.java +++ b/media/java/android/media/MediaMetadata2.java @@ -31,6 +31,7 @@ import java.lang.annotation.RetentionPolicy; import java.util.Set; /** + * @hide * Contains metadata about an item, such as the title, artist, etc. */ // New version of MediaMetadata with following changes diff --git a/media/java/android/media/MediaPlayer2.java b/media/java/android/media/MediaPlayer2.java index ece19b9ca37b3..dcc872c16e15b 100644 --- a/media/java/android/media/MediaPlayer2.java +++ b/media/java/android/media/MediaPlayer2.java @@ -43,6 +43,7 @@ import java.util.concurrent.Executor; /** + * @hide * MediaPlayer2 class can be used to control playback * of audio/video files and streams. An example on how to use the methods in * this class can be found in {@link android.widget.VideoView}. diff --git a/media/java/android/media/MediaPlayerBase.java b/media/java/android/media/MediaPlayerBase.java index 48b7a51fc1eb0..df1d547d09e40 100644 --- a/media/java/android/media/MediaPlayerBase.java +++ b/media/java/android/media/MediaPlayerBase.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * Base class for all media players that want media session. */ public abstract class MediaPlayerBase implements AutoCloseable { diff --git a/media/java/android/media/MediaPlaylistAgent.java b/media/java/android/media/MediaPlaylistAgent.java index 6b3620b62dc32..99d2b0e97fa5e 100644 --- a/media/java/android/media/MediaPlaylistAgent.java +++ b/media/java/android/media/MediaPlaylistAgent.java @@ -30,6 +30,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * MediaPlaylistAgent is the abstract class an application needs to derive from to pass an object * to a MediaSession2 that will override default playlist handling behaviors. It contains a set of * notify methods to signal MediaSession2 that playlist-related state has changed. diff --git a/media/java/android/media/MediaSession2.java b/media/java/android/media/MediaSession2.java index 66478318eb3b8..523d5caf999f7 100644 --- a/media/java/android/media/MediaSession2.java +++ b/media/java/android/media/MediaSession2.java @@ -49,6 +49,7 @@ import java.util.List; import java.util.concurrent.Executor; /** + * @hide * Allows a media app to expose its transport controls and playback information in a process to * other processes including the Android framework and other apps. Common use cases are as follows. *

    diff --git a/media/java/android/media/MediaSessionService2.java b/media/java/android/media/MediaSessionService2.java index 32caf4b5a0e7b..12aa4a44ca921 100644 --- a/media/java/android/media/MediaSessionService2.java +++ b/media/java/android/media/MediaSessionService2.java @@ -30,6 +30,7 @@ import android.media.update.MediaSessionService2Provider.MediaNotificationProvid import android.os.IBinder; /** + * @hide * Base class for media session services, which is the service version of the {@link MediaSession2}. *

    * It's highly recommended for an app to use this instead of {@link MediaSession2} if it wants diff --git a/media/java/android/media/SessionToken2.java b/media/java/android/media/SessionToken2.java index fdfa43abd1786..89209b6c8bd7c 100644 --- a/media/java/android/media/SessionToken2.java +++ b/media/java/android/media/SessionToken2.java @@ -28,6 +28,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** + * @hide * Represents an ongoing {@link MediaSession2} or a {@link MediaSessionService2}. * If it's representing a session service, it may not be ongoing. *

    diff --git a/media/java/android/media/VolumeProvider2.java b/media/java/android/media/VolumeProvider2.java index 711f51f810136..d7aa0f10adb07 100644 --- a/media/java/android/media/VolumeProvider2.java +++ b/media/java/android/media/VolumeProvider2.java @@ -26,6 +26,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** + * @hide * Handles requests to adjust or set the volume on a session. This is also used * to push volume updates back to the session. The provider must call * {@link #setCurrentVolume(int)} each time the volume being provided changes. diff --git a/media/java/android/media/session/MediaSessionManager.java b/media/java/android/media/session/MediaSessionManager.java index 051321c84d9a6..3b9f33614c7b3 100644 --- a/media/java/android/media/session/MediaSessionManager.java +++ b/media/java/android/media/session/MediaSessionManager.java @@ -390,6 +390,7 @@ public final class MediaSessionManager { } /** + * @hide * Get {@link List} of {@link SessionToken2} whose sessions are active now. This list represents * active sessions regardless of whether they're {@link MediaSession2} or * {@link MediaSessionService2}. @@ -412,6 +413,7 @@ public final class MediaSessionManager { } /** + * @hide * Get {@link List} of {@link SessionToken2} for {@link MediaSessionService2} regardless of their * activeness. This list represents media apps that support background playback. *

    @@ -433,6 +435,7 @@ public final class MediaSessionManager { } /** + * @hide * Get all {@link SessionToken2}s. This is the combined list of {@link #getActiveSessionTokens()} * and {@link #getSessionServiceTokens}. *

    @@ -456,6 +459,7 @@ public final class MediaSessionManager { } /** + * @hide * Add a listener to be notified when the {@link #getAllSessionTokens()} changes. *

    * This requires the android.Manifest.permission.MEDIA_CONTENT_CONTROL permission be held by the @@ -508,6 +512,7 @@ public final class MediaSessionManager { } /** + * @hide * Stop receiving session token updates on the specified listener. * * @param listener The listener to remove. @@ -666,6 +671,7 @@ public final class MediaSessionManager { } /** + * @hide * Listens for changes to the {@link #getAllSessionTokens()}. This can be added * using {@link #addOnActiveSessionsChangedListener}. */