Update the javadoc of the write() methods to indicate they can
return AudioManager.DEAD_OBJECT.
Bug 19169728
Change-Id: I560c5efba37c2cc8b870573558e0cab634cb3f5d
Will eventually be used by SystemUI and/or Settings.
Also fix SettingsProvider NPE.
Bug: 19993667, 19909433
Change-Id: Ie326849ac5f43ee35f728d9cc0e332b72292db70
Storage devices are no longer hard-coded, and instead bubble up from
whatever Disk and VolumeBase that vold uncovered, turning into
sibling Java objects in MountService. We now treat vold events as
the source-of-truth for state, and synchronize our state by asking
vold to "reset" whenever we reconnect.
We've now moved to a model where all storage devices are mounted in
the root mount namespace (user boundaries protected with GIDs), so
we no longer need app-to-vold path translation. This also means that
zygote only needs to bind mount the user-specific /mnt/user/n/ path
onto /storage/self/ to make legacy paths like /sdcard work. This
grealy simplifies a lot of system code.
Many parts of the platform depend on a primary storage device always
being present, so we hack together a stub StorageVolume when vold
doesn't have a volume ready yet.
StorageVolume isn't really a volume anymore; it's the user-specific
view onto a volume, so MountService now filters and builds them
based on the calling user. StorageVolume is now immutable, making
it easier to reason about.
Environment now builds all of its paths dynamically based on active
volumes. Adds utility methods to turn int types and flags into
user-readable strings for debugging purposes.
Remove UMS sharing support for now, since no current devices support
it; MTP is the recommended solution going forward because it offers
better multi-user support.
Simplify unmount logic, since vold will now gladly trigger EJECTING
broadcast and kill stubborn processes.
Bug: 19993667
Change-Id: I9842280e61974c91bae15d764e386969aedcd338
- Keep track of calls to AudioSystem.getDevicesForStream.
- Report device changes for the base streams to the binary event log.
- Fire internal intent so volume UI can respond to changes.
- Update devices when new routes are reported.
Bug: 19618959
Change-Id: I7bbd497b178d9829accc19e6c951a711aef8590c
Add public and system APIs for building an AudioRecord instance.
The validity of the combination of parameters is verified at
"build" time.
Bug 19699343
Change-Id: If959f0f35208fb81a902364aaeefc1ebef1a4d23
If media keys are dispatched to an overlay view, it is always consumed
because of fallback logic. Therefore, TvInputService skips to dispatch
media keys to an overlay view in order to return the keys back to
an application.
Bug: 18195249
Change-Id: I1cb4c9de5a73bd741ab64b1b85e9c986a1a92a90
Running in a configuration without audio service is not fully tested.
Remove the configuration option for now. Also remove unused delegation
layer in SoundPool.
Bug: 19891112
Change-Id: I47be0e32d54b8ef8fa25cf47b85eacf8a4969500
ImageWriter/Reader API change, including below changes
* Interface for Opaque ImageReader
* ImageWriter Interface and implementation
* Image class minor update to support ImageWriter opaque ImageReader
detach/attach interface are defined but yet to be implemented.
Change-Id: Ic7c0d2df73c80b1a81a7316d8c4556bf7703c309