Clarify offline usage of sessions and keys and implement
implement CryptoSession to support additional crypto use
cases.
Change-Id: Id3f8c706e9e3034b09af8e2a6a2f26bd74a49f93
Handle all access to SoundPool in the message Handler to
synchronize load/unload and play requests.
Add a timeout to load operations in case a problem occurs while loading
a sample and the SoundPool callback is not called.
Bug 6633095
Change-Id: I39949e4c8b2f7ca2d8b760b1f92c7e0fcd0a46e1
This allows sending media buttons to any PendingIntent,
so they can be captured with a registered receiver.
Also add some new ViewTreeObserver APIs; this is all for
a new support library API to watch media buttons while an
app has input focus.
Change-Id: I3c51cef59460662b008c9a2cc87d6a6383c21855
Add a boolean configuration option config_useFixedVolume indicating if
stream volumes or master volume can be modified.
If the option is true, the AudioManager volume and mute APIs will be no ops and the
volumes will be maxed out.
To be consistent:
- the ringer mode is forced to normal and cannot be modified
- volume panel is never displayed
- volume settings are not available
- ringer mode global action is not displayed.
The default for this option if false.
This is useful for a class of devices intended for connection to a digital
audio output only, where the volume is directly controlled on the audio sink.
Bug 8161458
Change-Id: I2571d5ee79952ef0914d8fd1985816467a80adcd
Added audio_assets.xml resource listing the
audio asset files for each touch sound effect.
This resource can be overlayed to customize the
touch sounds for a given device.
Bug 8339000
Change-Id: I8c156f0ce7f8769a58d77442fbd9c46b57c202e9
AudioManager.registerMediaButtonEventReceiver maps to
AudioService.registerMediaButtonIntent
AudioManager.registerRemoteControlClient maps to
AudioService.registerRemoteControlClient
To use RemoteControlClient, an application needs to have
first registered its button event receiver. Therefore
registerMediaButtonEventReceiver() needs to have
completed registration when returning, otherwise the
RemoteControlClient registration can sometimes fail due
to the lack of association between the button event
receiver and the RemoteControlClient.
Bug 8315459
Change-Id: I82c196c3f21a65e38bad275085ed4f9ec0ec60dd
Commit 2a57ca93 introduced a regression in startBluetoothSco()
where the calling pid was cleared before creating the entry for
the client app. The pid in the entry was always the system server pid
and the SCO client verification logic was broken preventing the activation
of the BT SCO connection.
Change-Id: I4e024b22fceb350f829ff0d8664703faeef7af48
Modify RemoteControlClient and AudioService to support multiple
simulataneous IRemoteControlDisplay interfaces active at the
same time.
Change-Id: I9f200a488afdd62a5e6957e64624d745e0f28149
Clear calling identity before calling BluetoothHeadset
methods from binder call.
Also send BT SCO audio state intents from the
message handler, not from binder calls.
Bug 8242429
Change-Id: I742ba8dc47a258dbee6fb9d57db302f2bffaafd7
Un-hide two new methods in MediaCodec, one new constant, and a new
EGL extension.
Bug 7991062
Bug 8191230
Change-Id: I028669132d9ffda1e4b34a561bab3997bbd7dae5
The support library MediaRouter implementation needs a couple
of extra generally useful APIs in the platform MediaRouter to ensure
that it can safely synchronize its state.
Change-Id: I72c5652e10f3b6de48800abfa922affbefbd250f
Adds two new public methods to MediaCodec, and one new public
constant to MediaCodecInfo (currently @hidden).
Bug 7991062
Change-Id: I830a9794e92334ad05c870cc5fc90be4652147a5
Make scanSingleFile behave the same way as scanMtpFile, by taking into
account whether there's a .nomedia file guarding the file being scanned.
Without this, downloaded (or otherwise explicitly scanned) images/video/music
will appear in Gallery and Music even if a .nomedia file is hiding them.
Change-Id: Ib9ad4bda1b9a942f79a37ccd8e6a54d57710f528
In line with ongoing effort of adding vpx encoder to
stagefright (https://android-review.googlesource.com/50893)
we need to add profile and level values for VP8.
VP8 profiles and levels are defined in OMX IL 1.1.2
extension headers, which is also being added here
https://android-review.googlesource.com/51272
This alters the public API.
Change-Id: I2bbb91c0b8b522b90c3cdfadaba0d18134800408
Signed-off-by: Kunter Gultekin <kuntergultekin@google.com>
related-to-bug: 8226783
# By Henrik Engström
# Via Android Git Automerger (2) and others
* commit 'c28fde57f0c7762913615b16d651d4e7991d6175':
Fix possible integer overflow in MtpStorage
# By Henrik Engström
# Via Gerrit Code Review (1) and Henrik Baard (1)
* commit '3cfca67b0f1e3f464274fa5d3b2e31e5288d8f38':
Fix possible integer overflow in MtpStorage
Implemented reading and writing state to retain information
across boots, API to retrieve state from it, improved location
manager interaction to monitor both coarse and fine access
and only note operations when location data is being delivered
back to app (not when it is just registering to get the data at
some time in the future).
Also implement tracking of read/write ops on contacts and the
call log. This involved tweaking the content provider protocol
to pass over the name of the calling package, and some
infrastructure in the ContentProvider transport to note incoming
calls with the app ops service. The contacts provider and call
log provider turn this on for themselves.
This also implements some of the mechanics of being able to ignore
incoming provider calls... all that is left are some new APIs for
the real content provider implementation to be involved with
providing the correct behavior for query() (return an empty
cursor with the right columns) and insert() (need to figure out
what URI to return).
Change-Id: I36ebbcd63dee58264a480f3d3786891ca7cbdb4c
- add mirrored version of the icons
- make VolumePanel respond to layout direction changes
- make AudioService propagate layout direction changes to the VolumePanel
Change-Id: Ibb884ab81641c319a9b7bea1381066f3f19581f0
When converting the MB value MtpReserveSpace value to bytes there is a
possible integer overflow since 3 integer values are multiplied, even
though the result is stored in a long variable. This would be visible when
the value is more than 2 GB. This is solved by making the constants
longs instead of ints.
Change-Id: I799129f7076a6e331cece17b5c05aed210499648
Iterate over entries in the media button stack from the top
for remote volume-related operations as the stack entry being
looked for is more likely at the top of the stack.
Change-Id: Iaa2685ebb297d2184dd2c63498d7bd2b811ce744
The remote control stack in AudioService is responsible for handling
which application receives media button events. When an application
"registers" its media button receiver, it gets placed at the top
of the remote control stack. If the app also has audio focus (is
at top of focus stack), this will also cause the information of
the attached remote control client (RCC) to be displayed on the
lockscreen.
If an app doesn't re-register its button receiver when it wants
to receive the button events, it might have lost its place at the
top of the remote control stack, and would not show up in the
lockscreen anymore.
This change consists in using the playstate reported by the RCC
to change the remote control stack. If an RCC reports a "playing"
state (e.g. playing, fast forwarding), it is safe to assume the
application is actively being used, and should be the one that
receives the transport control buttons. This CL uses the reported
playstate to conditionally move the corresponding stack entry
to the top of the stack.
Bug 7311023
Change-Id: I1505f01664c16e108b22d33e3f47f0056343676e