History log of /frameworks/base/media/java/android/media/session/MediaSession.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7c090d54e2c0eb5309d3f7dc131e137d9c986793 29-Feb-2016 Insun Kang <insun@google.com> Annotate Media section of framework/base

Use @IntDef and @StringDef annotations where appropriate to ensure that
IDEs can autocomplete to the correct set of constants.

Bug: 22726900
Change-Id: I7626beb0634b754ffea9c012f42e6a21aa0faa51
/frameworks/base/media/java/android/media/session/MediaSession.java
e9de43f8888fa8f6cfd060a260e7fcea765a76a2 26-Feb-2016 Donghyun Cho <donghyun@google.com> Merge "MediaSession: Update javadoc of prepare-related methods" into nyc-dev
1ea56832178b40ce5a54ee77e6a01108496dc6e9 23-Feb-2016 Donghyun Cho <donghyun@google.com> MediaSession: Add a way to get a calling package

Introduced a new method, MediaSession#getCallingPackage(), which returns
the name of the package that sent the last media button, transport
control, or command from controllers and the system.

Bug: 25208121
Change-Id: I90bc1fe3e5e432f6c95b4adfbef6ea6cea9244ff
/frameworks/base/media/java/android/media/session/MediaSession.java
f9f240ab7d9918a14437d3ae63ae959e4ff906cc 24-Feb-2016 Donghyun Cho <donghyun@google.com> MediaSession: Update javadoc of prepare-related methods

Bug:25841735, Bug:25153060, Bug:25153353
Change-Id: I95cd2b7381e3d8abe5a5c79dbd8655a02f8d40c3
/frameworks/base/media/java/android/media/session/MediaSession.java
22188f118754c3b31c13d2f94daf718f111d92af 02-Feb-2016 Donghyun Cho <donghyun@google.com> MediaSession: Add new methods for preparing media content

Introduced new methods for preparing media content: prepare,
prepareFromMediaId, prepareFromSearch, and prepareFromUri. These methods
allow MediaSession prepare media content rather than play
it. MediaSession will set up a queue or buffer their content during
these preparing requests.
The constants, FLAG_HANDLES_PREPARE_ONLY and EXTRA_PREPARE_ONLY, are
removed because the introduced methods can replace them.

Bug:25841735, Bug:25153060, Bug:25153353
Change-Id: I8fa2097c98fe2fba92b267d2865a9b75d118af09
/frameworks/base/media/java/android/media/session/MediaSession.java
3de7c4146eb27044d68a3443d77c3f5c369911b7 26-Jan-2016 Donghyun Cho <donghyun@google.com> MediaSession: Define an extra field for staying paused after play

Introduced a new constant EXTRA_PREPARE_ONLY, which allows
MediaController to ask MediaSession to stay paused right after play
requests are called. If this field is set to true in extra bundle and it
is passed during playFromMediaId, playFromSearch, and playFromUri
requests, MediaSession will prepare the given media, but not start
playing it.

Bug: 25841735
Change-Id: I2a2f71a251bd6f475698fe8a5bb696ac70003e2b
/frameworks/base/media/java/android/media/session/MediaSession.java
c05c1aeedf44b7019b6749758dffc03df7632225 05-May-2015 Jeff Brown <jeffbrown@google.com> Revert "Initial draft of new MediaRouter APIs."

This reverts commit 1a937b04e63539cb1fab1bde601031d415c7156f.

Bug: 20641986
Change-Id: I035d945d1561e5fc7c914aa9362635f763c83cfd
/frameworks/base/media/java/android/media/session/MediaSession.java
c2045470a343923b0d74ddbd6a6b80fcf6652d66 25-Mar-2015 P.Y. Laligand <pylaligand@google.com> Added MediaController.TransportControls#playFromUri.

b/19622238

Change-Id: I75d6258ccafb2266d5f8bdf3a279b3a2e9ef2bbf
/frameworks/base/media/java/android/media/session/MediaSession.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/media/java/android/media/session/MediaSession.java
18a635c2a1ed198f9bc3b2a251c86d153aa8832a 10-Dec-2014 Michael Wright <michaelwr@google.com> am 584674c3: am c6de3212: Merge "Don\'t try to scale the bitmaps for null MediaMetadata." into lmp-mr1-dev automerge: 422db53

* commit '584674c39dad11be182ea3763df557d35554157b':
Don't try to scale the bitmaps for null MediaMetadata.
f32bd3c5cd8bd2c00f52ea32d7481c30e29d2acc 09-Dec-2014 Michael Wright <michaelwr@google.com> Don't try to scale the bitmaps for null MediaMetadata.

Bug: 18586572
Change-Id: I133e58eeb05136ca82cbd35840b68ebedd9ec365
/frameworks/base/media/java/android/media/session/MediaSession.java
fdc7f747f2b30c84cd4d3d33babd8a2cc7656cfa 21-Nov-2014 RoboErik <epastern@google.com> am 50b02d61: am 5b881d43: Merge "Scale bitmaps in metadata sent to the system" into lmp-mr1-dev
automerge: 216c089

* commit '216c089834e92733055a17bcade7ca1971677b49':
Scale bitmaps in metadata sent to the system
b9c87fb4034a4a61b57150000a937aa95927861c 19-Nov-2014 RoboErik <epastern@google.com> Scale bitmaps in metadata sent to the system

This scales down any MediaMetadata bitmaps that are sent to the system
through MediaSession.

bug:18114918
bug:18084448
Change-Id: Ib7b040cd8245108ad2dd56afe2499290d2b49f51
/frameworks/base/media/java/android/media/session/MediaSession.java
341dd2bda5fbe4f0cd6c0adfd46d67eb301fd229 05-Nov-2014 RoboErik <epastern@google.com> am 5468f292: am acbdb4fe: am 9af44ddf: Merge "Post volume requests to the handler thread in MediaSession" into lmp-mr1-dev

* commit '5468f292f31383ba1ea9b488e1d0dfc743764f47':
Post volume requests to the handler thread in MediaSession
305563bd6368bb650bc42267bcf71b3722a5a86b 05-Nov-2014 RoboErik <epastern@google.com> am 6651cd38: am e2b8dab0: am 5604a85a: Merge changes Ia3bc5b0d,I26e662ff into lmp-mr1-dev

* commit '6651cd38307d516f5c8e322828b7aaa076231071':
Add extras to the PlaybackState
Add setRatingType to MediaSession
9af44ddf0367c542d6c1db6060456bd72f3c83ca 05-Nov-2014 RoboErik <epastern@google.com> Merge "Post volume requests to the handler thread in MediaSession" into lmp-mr1-dev
566c1ed18f429a7a64aeac01baa0af150fcd1eb4 04-Nov-2014 RoboErik <epastern@google.com> Add setRatingType to MediaSession

This was missing in L. Needed to tell controllers how to rate content.

bug:18051829
Change-Id: I26e662ff04f77ed7f2922bf9e74acf74c850547b
/frameworks/base/media/java/android/media/session/MediaSession.java
563acea6665c45902bbc46db1a22c036344a818b 28-Oct-2014 RoboErik <epastern@google.com> Post volume requests to the handler thread in MediaSession

Volume requests should be getting sent on the same thread as other
callbacks, not on the binder thread.

bug:18156755
Change-Id: I35bceb3f8c74ccba35f3d08ff000a254fcbd04bb
/frameworks/base/media/java/android/media/session/MediaSession.java
c1012af764b7cee9bcf29abd7bb6cd8355d3d19f 21-Oct-2014 RoboErik <epastern@google.com> am 5d2a142c: am c5109b1f: am 01c9d330: am f0a28411: am 2fa604fc: Merge "Add missing break to switch statement" into lmp-dev

* commit '5d2a142c4a1e24e97513475e51a4e13a811cd097':
Add missing break to switch statement
59759903a9696daefa817079c8432468ed398033 20-Oct-2014 RoboErik <epastern@google.com> Add missing break to switch statement

the skip to queue item case was falling through when it shouldn't.

bug: 18058515
Change-Id: Ica20b59efad12a58ad16501146fc9a0d4595e184
/frameworks/base/media/java/android/media/session/MediaSession.java
4932877113fe7fc7d673a60d311c578fcb71c92f 26-Sep-2014 RoboErik <epastern@google.com> am 00cbb751: am 5e8f023d: am a59c7f03: am dff59b8b: am 23df1c46: Merge "Allow null queues to be set in MediaSession" into lmp-dev

* commit '00cbb751533bf683480ba80f0c450c59c6ca96a1':
Allow null queues to be set in MediaSession
03fce072cac092923e10a6b5f09fcde333375f9e 24-Sep-2014 RoboErik <epastern@google.com> Allow null queues to be set in MediaSession

Also add some test code for it to OneMedia.

bug:17593962
Change-Id: I074e2bb0329d9a97f623e4309bb7dada157b8324
/frameworks/base/media/java/android/media/session/MediaSession.java
4dfedcb0c382e9094d129d6e3ad7c1cc99b0f9df 09-Sep-2014 RoboErik <epastern@google.com> am 0e6071ec: am c1ec88a5: am e8a75871: Merge "Possible fix for dead handler in Music button event sending" into lmp-dev

* commit '0e6071ec37b667d2c0af20522e312e07256e88ce':
Possible fix for dead handler in Music button event sending
9ff7dda93e59e1e0032f5b96633d1479ab307a11 08-Sep-2014 RoboErik <epastern@google.com> Possible fix for dead handler in Music button event sending

I'm still attempting to root cause, but this is a potential fix. I
suspect the callback is getting registerd on a looper that isn't the
main looper which is then getting killed at some point. This change
will make all legacy callbacks happen on the main looper, which should
prevent the state.

bug:17420281
Change-Id: Ia78e694b32b24398d3c09f49d12632755ef45597
/frameworks/base/media/java/android/media/session/MediaSession.java
8f7ac26a2f07128c8d17fe12bcf76b6ef6b00e88 04-Sep-2014 RoboErik <epastern@google.com> am 82f0f332: am dd22920f: am 11370544: Merge "Update VolumeProvider apis per feedback" into lmp-dev

* commit '82f0f332944acfe13d52a3099825d77edd4c9d4a':
Update VolumeProvider apis per feedback
0d0f67f5ee5f939a1b611bc4583212707afd9bee 04-Sep-2014 RoboErik <epastern@google.com> Update VolumeProvider apis per feedback

Added currentVolume to constructor.
Removed onGetCurrentVolume and notifyVolume changed.
Added setCurrentVolume and getCurrentVolume.
Updated javadoc to make it clear how they're used.

bug:17258168
Change-Id: I24388aab38824b101ccc18810caa09d46aa7afe0
/frameworks/base/media/java/android/media/session/MediaSession.java
057e9e6be0cbbec2a8df667e1655bb37fc50ecfc 03-Sep-2014 RoboErik <epastern@google.com> am b263500a: am 42da57f1: am d4c2499c: Merge "Allow empty strings in playFromSearch" into lmp-dev

* commit 'b263500a1368bf1865106c437b0cd2add94d65ae':
Allow empty strings in playFromSearch
4b253d2bcd62ea2a9afb067c1f1363fa7b752185 02-Sep-2014 RoboErik <epastern@google.com> Allow empty strings in playFromSearch

This allows empty strings to be passed to playFromSearch to indicate
something should be chosen for the user and played. This makes it
consistent with INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH.

bug:17316566
Change-Id: I00ce8d252efa940e05568629e35198450c224a92
/frameworks/base/media/java/android/media/session/MediaSession.java
5bd23653e06b872d9e1fda4fa6df4a4b2980d46c 02-Sep-2014 RoboErik <epastern@google.com> am 85a4839e: am e9fbaa4e: am 169739a7: Merge "Document MediaSession.Callback.onMediaButtonEvent and add returns" into lmp-dev

* commit '85a4839e995fcf0aabce973c18d984badd9509d2':
Document MediaSession.Callback.onMediaButtonEvent and add returns
cd74270da7a7320904f14a465b8902dd5ea56f1d 29-Aug-2014 RoboErik <epastern@google.com> Document MediaSession.Callback.onMediaButtonEvent and add returns

Documents the return value and makes sure it returns true where
appropriate.

bug:17289717
Change-Id: Ia831a7212b76e8434b745be70da2ed106fa01230
/frameworks/base/media/java/android/media/session/MediaSession.java
d133303a5c3eaddcc5dd5b01f03916d754efaa8a 29-Aug-2014 RoboErik <epastern@google.com> am ab716047: am 86e941e6: am a70def9e: Merge "Update to MediaBrowser APIs per council feedback" into lmp-dev

* commit 'ab71604780c4cccf238e1c78b7b05310c4a49583':
Update to MediaBrowser APIs per council feedback
674f89837bc629f415d40827900aed71effcd425 29-Aug-2014 RoboErik <epastern@google.com> am 3b273101: am c4f63258: am b907b22f: Merge "Set/unset session on the callback" into lmp-dev

* commit '3b2731011149b9688c181de048651345db446406':
Set/unset session on the callback
350be2e1c2e4ad8b1a1386a55b40c123f148e94e 28-Aug-2014 RoboErik <epastern@google.com> Merge "Update to MediaBrowser APIs per council feedback" into lmp-dev
5ea924bcdb7d1a796937a315f59db44179bb4181 28-Aug-2014 RoboErik <epastern@google.com> Set/unset session on the callback

We lost this somewhere. When a callback is set on a MediaSession it needs
to have a reference to the Session so it can do default routing of media
keys.

bug:17304614
Change-Id: I4af82947da790135049d40c5c69c2996f3cc4ccc
/frameworks/base/media/java/android/media/session/MediaSession.java
3625bf72cb8bcf3c7f8f8cd8d708d7206824cc62 28-Aug-2014 RoboErik <epastern@google.com> Update to MediaBrowser APIs per council feedback

Does all the updates in the bug except the loadIcon/loadBitmap
methods, which are removed per feedback from Sharkey.

bug:17205016
Change-Id: Ie84d4d25a59c6985ce16972c26c8d1e5c02ff5c9
/frameworks/base/media/java/android/media/session/MediaSession.java
09301276148a7ba3e46e6e14027d5e78f12112d9 26-Aug-2014 RoboErik <epastern@google.com> am dba279ee: am e9b37d06: am 936b1894: Merge "Ensure current volume is current" into lmp-dev

* commit 'dba279ee1e5ae7a90e8f0693ce929d7ef8bd25ca':
Ensure current volume is current
7e2b3008f11cae295c84d20f32d731e1d379562f 22-Aug-2014 RoboErik <epastern@google.com> Ensure current volume is current

This sets the current volume when a session is switched over to
remote playback. Otherwise it won't be current until it changes and
sends an update.

Change-Id: Iabedb24a34e88308e7e3c56a2b1ab279a17b466b
/frameworks/base/media/java/android/media/session/MediaSession.java
6b171b36f87268cd954f753458c06704fe30d8bf 21-Aug-2014 RoboErik <epastern@google.com> am 666360cb: am 8961b5d5: am 7a754ab3: Merge "Api updates to MediaSession components" into lmp-dev

* commit '666360cbe70a3c482b16a0fd438a3f10d0fcf643':
Api updates to MediaSession components
a66c40bf6e0fb79ead6d8a9fc29c5671fa7b1206 16-Aug-2014 RoboErik <epastern@google.com> Update MediaSession APIs for council feedback

-Changes MediaSessionManager.SessionsListener to OnActiveSessionsChangedListener
and makes it an interface.
-Renames MediaController.VolumeInfo to MediaController.AudioInfo
-Renames MediaSession.Track to MediaSession.Item

bug:17059552
Change-Id: I3a0b4371700ad6657972c312a5ab89ddfac6df5b
/frameworks/base/media/java/android/media/session/MediaSession.java
d2b8c947ddfc6349a3ae6c3968b422b9cf50d7ed 19-Aug-2014 RoboErik <epastern@google.com> Api updates to MediaSession components

-renames get/setBufferPosition to get/setBufferedPosition
-renames getLaunchActivity to getSessionActivity
-adds doc link to setVolumeTo flags param
-renames setLaunchActivity to setSessionActivity
-hides setMediaRouter
-moves PLAYBACK_TYPE_ constants to MediaController.AudioInfo
-adds addOnActiveSessionsChangedListener version with a handler parameter
-renames AudioInfo to PlaybackInfo

bug:17114404
Change-Id: I0fbfe4eb979cb2af98e3f13095c654bb131f7ae5
/frameworks/base/media/java/android/media/session/MediaSession.java
b135d06cb83db03b1328b7a82f064de7868fb16f 20-Aug-2014 Jeff Brown <jeffbrown@google.com> Remove incomplete media router API. (DO NOT MERGE)

Change-Id: I310fadafb5a6b8190a32e5d87f3e1823c87bcef7
/frameworks/base/media/java/android/media/session/MediaSession.java
477d1197c3c25c01ace7ea4494437c23720a2eb3 06-Aug-2014 RoboErik <epastern@google.com> Combine MediaSession Callback and TransportControlsCallback

This combines them into a single Callback class and adds default
handling to media buttons to check the available actions and call
one of the other methods if appropriate.

Change-Id: If9897d8cf6d8d8046aa85a646c22382f1db1461b
/frameworks/base/media/java/android/media/session/MediaSession.java
031149cd5f22bd858142633c7a763450f42793f7 26-Jul-2014 RoboErik <epastern@google.com> Add context to MediaController constructor

This also adds a convenience method to MediaSession to allow getting
a controller instead of having to create and cache your own.

bug:16561220
Change-Id: I87f551a7474e71f1cf2f07e0e541c3a4515cd977
/frameworks/base/media/java/android/media/session/MediaSession.java
aa4e23bbb36994708ba72c5f4c83255025d99e07 25-Jul-2014 RoboErik <epastern@google.com> Add getPackageName to MediaController

This removes the MediaSessionInfo class and adds a method on the
controller to get the package name. This also converts code that
depended on the session's UUID to use the token for comparison or
the Tag in the case of test code that needs a string identifier.

Change-Id: Icb8dc76c70e23e897da8fd07651c524b96372bf9
/frameworks/base/media/java/android/media/session/MediaSession.java
b214efbb9170a9f6a4991684a63ca59680074cc7 24-Jul-2014 RoboErik <epastern@google.com> Expose a way to set a PendingIntent for restarting playback

This is to allow apps to set a PendingIntent to restart playback. This
is not persisted across reboots but will allow music to start playing
again for the life of the system. Only the most recent priority app with
a PI set will be cached. This also deprecates methods in AudioManager
that do this and unhides the unregister method in MediaSessionManager.

Change-Id: I66fbf5856333468d8cb8a3022809778ba00d426e
/frameworks/base/media/java/android/media/session/MediaSession.java
e34c09daf89fb888fe2638e71758573462d85173 24-Jul-2014 RoboErik <epastern@google.com> Finish plumbing for launch intents in sessions

This finishes out the plumbing for setting a launchable PendingIntent
on a session and getting it from a controller to launch an app's UI.

Change-Id: I0c9506e7c3f0ebf57070ca7e0d91324eb3fdd1e1
/frameworks/base/media/java/android/media/session/MediaSession.java
76fca4e177e18b591439fdff64b8f5242a5122d0 23-Jul-2014 RoboErik <epastern@google.com> Add getFlags and getSessionToken to MediaController

getFlags was hidden, should have been public. Also added getSessionToken
as a convenience method for apps to get the token used to create a
controller.

bug:15408392
Change-Id: Icb19b43ebb7e01727eec1a4e667dafcfc3b8d4eb
/frameworks/base/media/java/android/media/session/MediaSession.java
f364f944962c4ec66f5e5b33dafe8480f38f6db6 22-Jul-2014 Gabriel Peal <gpeal@google.com> Added Action to PlaybackState

Added the ability to discover MediaBrowsers

Change-Id: I925c8738ac73afd0bee3dada2ee7ff2d5047e63f
/frameworks/base/media/java/android/media/session/MediaSession.java
f0593bc17b61c872ae2d7705fb598c5e5056e679 22-Jul-2014 Gabriel Peal <gpeal@google.com> Added QueueState, playUri, and playFromSearch.

Added QueueState to MediaSession/MediaController
Added play(Uri) and playFromSearch(String) to MediaController.TransportControls

Change-Id: I1a8ad5c22d05015ab6ff5700dc8a758455f1d89b
/frameworks/base/media/java/android/media/session/MediaSession.java
9db9bf7034d7dcdf596dc22d521b18975d0dd2b9 21-Jul-2014 RoboErik <epastern@google.com> Switch Session APIs over to AudioAttributes

The session apis were using audioStream in several places. This
updates them to use AudioAttributes instead.

bug:16403289
Change-Id: Ic4da9ca5fbea2536e80c71503bd9a9bf7f346997
/frameworks/base/media/java/android/media/session/MediaSession.java
ca58ddf7c82dd0857de0c3d49d7eb87a842ee4ce 18-Jul-2014 RoboErik <epastern@google.com> Fix crash when calling MediaSession callback

bug:16311395
Change-Id: Ice52d2da63933af881dd95fa8c6f59a6fe27e0df
/frameworks/base/media/java/android/media/session/MediaSession.java
1ff5b1648a051e9650614f0c0f1b3f449777db81 16-Jul-2014 RoboErik <epastern@google.com> Change adjustVolumeBy to adjustVolume

This makes volume adjustments take a direction instead of a number of
steps and renames the API appropriately.

Change-Id: I6a31cbc42d889a38aa63446686a424cb2b8b2270
/frameworks/base/media/java/android/media/session/MediaSession.java
8b4bffcac996b4083e720310a09d315ca1c4a000 10-Jul-2014 RoboErik <epastern@google.com> Make MediaSession and MediaController constructors public

This makes the MediaSession/Controller constructors public and registers
with the system behind the scenes.

This also adds a bit about needing to call setActive(true) to start receiving
commands in MediaSession's docs.

Change-Id: If882d229b54c36bf0831aca0255052dda667a2bc
/frameworks/base/media/java/android/media/session/MediaSession.java
1a937b04e63539cb1fab1bde601031d415c7156f 02-Jul-2014 Jeff Brown <jeffbrown@google.com> Initial draft of new MediaRouter APIs.

This patch introduces basic infrastructure for the new MediaRouter
API. The code is fully documented but incompletely implemented.
It is being submitted not to facilitate API reviews.

MediaRouter is a new class that applications used to discovery,
connect to, and control media devices as represented by media
destinations and their routes. Routes may offer a variety of
capabilities. This new class is a much more powerful replacement
for the existing MediaRouter.

MediaRouteService is a base class for creating media route services
which third-parties can implement to make routes available to
applications. It is analoguous to the MediaRouteProvider
infrastructure of the old media router support library but it
is designed to be integrated into the framework and enable a
variety of new usages such as remote display projection.

Stay tuned for more...

Change-Id: I2c7c6013d9f751d71e83697e7fc9e49bf7751fef
/frameworks/base/media/java/android/media/session/MediaSession.java
01a500ed1c6ae3fff66678144ae637aa8cad0ecc 11-Jul-2014 Jeff Brown <jeffbrown@google.com> Delete first draft of media routing APIs.

The new APIs will not be as tightly integrated into MediaSession.

Change-Id: I5cfd37d9d8d0c5d46c55edb5cf0772a8f1ef13ab
/frameworks/base/media/java/android/media/session/MediaSession.java
3c45c29109d23981d8b707c809b3b43ce2e20fc3 09-Jul-2014 RoboErik <epastern@google.com> Pipe volume keys to adjustVolume instead of sendMediaKeyEvent

We were calling sendMediaKeyEvent with a KEYCODE_VOLUME key, which was being
ignored because it's not a media key. This redirects the volume keys to use
the adjustVolume methods instead. It also sends the appropriate flags to
make the lock screen consistent with the home screen and the volume keys
only affect active playback when the screen is off.

bug:15900519
Change-Id: I9f3853a2385869353a58debae6e6ca9933ba06ce
/frameworks/base/media/java/android/media/session/MediaSession.java
dba34ba35cd2042d9a8fecfda56e2abe7a680bad 25-Jun-2014 Jeff Brown <jeffbrown@google.com> Make MediaSessionToken an inner class of MediaSession.

Also add some missing AIDLs to the framework makefile to ensure
they are included in the SDK.

Change-Id: If85a3091c7591e0b3bbe6cc4bb74aba2284b4f42
/frameworks/base/media/java/android/media/session/MediaSession.java
19c9518f6a817d53d5234de0020313cab6950b2f 24-Jun-2014 RoboErik <epastern@google.com> b/15729204 Pipe sessions through to VolumePanel

When remote volume is changed via volume buttons we need to notify
the system UI so it can show the slider. This also passes it the
controller to use so adjustments to the slider are sent back to
the correct session.

Change-Id: If5847bcd5db16c56e0e9904b88c94e5b28954c41
/frameworks/base/media/java/android/media/session/MediaSession.java
bf58d9b727f1007c7c620f622ac1d8003b1b211b 24-Jun-2014 Jeff Brown <jeffbrown@google.com> Minor cosmetic tweaks.

Change-Id: I626bad7177659b5670c2864d7bc78033a0ee16e7
/frameworks/base/media/java/android/media/session/MediaSession.java
ef3c9e9b057a5aac2d0d012e8e6385660478e203 20-Jun-2014 RoboErik <epastern@google.com> Add volume handling APIs to sessions

This renames and moves the VolumeProvider and adds apis to
MediaController to get the current state of volume on a session and
to request changes to the volume.

Change-Id: I290e9efefb6676c805819a29e1d054c3192c6773
/frameworks/base/media/java/android/media/session/MediaSession.java
6f0e4ddd66fcdcc13944d8970d0b560e2626508b 18-Jun-2014 RoboErik <epastern@google.com> Remove more dead audio service code

Hit a snag in remote volume changes. Trying off this round of
removal so I can work on fixing remote volume handling in a
separate CL.

Change-Id: I49b1ba4b75d770ba7c77da081755f3210a9e9483
/frameworks/base/media/java/android/media/session/MediaSession.java
5d3114b64a88ac1f72becd8d46f148c666f64aa3 04-Jun-2014 RoboErik <epastern@google.com> b/15388389 Add volume handling support to MediaRouter

This makes MediaRouter work with sessions to handle volume
requests. Should work with all existing custom volume handling.

Change-Id: I5dfde26a6203a1072b7fc700978b4ca852ebe7d0
/frameworks/base/media/java/android/media/session/MediaSession.java
b69ffd4dc2c8fa85e0064151141ebeee90de471e 30-May-2014 RoboErik <epastern@google.com> Minimum work to make volume handling work with sessions

This is the minimum change to make adjusting volume work with
MediaSessions. This only affects adjusting the volume and adjusting
the volume with a suggested stream. Adjusting a specific stream or
setting a specific stream will still use the same code.

This does not fix existing remote volume handling in RCC, which
will require a separate change to MediaController.

Change-Id: I5b957ff4bece1ee11e2364e1f216e1c08343c983
/frameworks/base/media/java/android/media/session/MediaSession.java
c47fa84b0a6bda48c38ba8822481ce613bafd019 29-May-2014 RoboErik <epastern@google.com> Refactor transport controls APIs

This merges TransportPerformer into MediaSession + a
TransportControlsCallback and makes TransportController into an
inner class on MediaController called TransportControls. Also makes
the PlaybackState and Metadata part of the session APIs instead of
transport controls.

Change-Id: I16ad392e6d318abe3119ad5d89656d253af25e16
/frameworks/base/media/java/android/media/session/MediaSession.java
79fa4630bbca7c6c251eea99fe8997e4b45becee 28-May-2014 RoboErik <epastern@google.com> API changes to sessions

Changes requested by API Council review. A second CL will refactor
TransportController and TransportPerformer based on feedback.

Change-Id: Ie26a7d01d7021232a66c2edf1eb58120437fdfde
/frameworks/base/media/java/android/media/session/MediaSession.java
02014c8faa43382fc1f7ce80a05991ff32ead89f 22-May-2014 RoboErik <epastern@google.com> Switch to using int stream instead of AudioAttributes

This is an alternate to the submitted API which doesn't use the new
AudioAttributes class and just takes the AudioManager.STREAM instead.

Change-Id: I0365bc6fb9196fc33852ba6b202ca553efe0cc85
/frameworks/base/media/java/android/media/session/MediaSession.java
33983a901176adcc16c820444b667a37e6472243 21-May-2014 RoboErik <epastern@google.com> Add stream/volume apis to sessions

This adds RemoteVolumeProviders which handle volume change
events and a way to switch a session between local stream
playback and remote playback handling.

This also adds a way for an app to specify the PendingIntent
to launch when we want to show their ongoing playback UI.

Change-Id: I3a72bf2ec7ca55f61f50859ddc2988eebd491e9d
/frameworks/base/media/java/android/media/session/MediaSession.java
418c10ca9df1505509afeffd558cd92fc97bc635 19-May-2014 RoboErik <epastern@google.com> Add 5s timeout to wakelock

Also filed a b/15110168 to anr the app if it doesn't finish with the
button event in 5s.

Change-Id: I23906b4c7f17d3d3a29eef92b523d8653c87017e
/frameworks/base/media/java/android/media/session/MediaSession.java
42ea7eecd149161ed192d3029f0d77d1d08a4aa5 17-May-2014 RoboErik <epastern@google.com> Rename session classes to have media prefix, hide routes

This renames several of the core session classes to be prefixed
with Media. It also adds @hide to all route references for now.

Change-Id: Idb42897d490cf24626e4e93ca975b2cb93ec054c
/frameworks/base/media/java/android/media/session/MediaSession.java
07c7077c54717dbbf2c401ea32d00fa6df6d77c6 20-Mar-2014 RoboErik <epastern@google.com> Add RouteProviders to the new Media APIs

Compiles and works with OneMedia. This currently is a rough test of
the system for finding, connecting to, and sending messages to routes.
This will just connect to the first route it finds when a request to
open the route picker is made (and disconnect when another request is
made).

Change-Id: I5de5521a079471b9e02664be4654c0591dfd9a6d
/frameworks/base/media/java/android/media/session/MediaSession.java
8ae0f34db936a649ddaf9cdd086c224f6514efeb 25-Feb-2014 RoboErik <epastern@google.com> Adds a TransportController and TransportPerformer to session

This makes transport controls a primitive interface on sessions with
a way to create the performer, register callbacks, and send commands
and updates between controllers and performers. This still needs some
cleanup but has been tested with OneMedia.

Change-Id: I373d35f7ccc383b8421bd14044457467d80425f3
/frameworks/base/media/java/android/media/session/MediaSession.java
2f5b057da7d05d5d699a272aa24fd7c97cdda820 21-Feb-2014 RoboErik <epastern@google.com> Move Session apis to android.media.session

This is to make it easier to distinguish the new apis from the old
ones.

Change-Id: Ic5eaf65e8bd054a844f87b9118c4bb18f30ac8a7
/frameworks/base/media/java/android/media/session/MediaSession.java