Also changing method signatures to be more in line with our convention.
Based on some of the changes I went through, it looks like:
1. We were only legitimately saving the very last NotificationRecord
that was dumped.
2. We weren't dumping any NotificationChannels into
NotificationChannelGroup protos.
Bug: 65750824
Test: Android builds
Change-Id: I8c1ef90cf69d8ea00a7bad0c67445741056e23ef
Methods for querying HDCP, security levels and
number of sessions
bug:64001680
bug:33657579
Test: cts: MediaDrmMockTest, ClearKeySystemTest
gts: GtsMediaTestCases
Change-Id: Ie616f96ab6b74410a3d7548a7f34b20cf0831d0c
New API to specify an accessbility service wants to force ducking
in its focus request, regardless of the framework's evaluation
of whether or not it should duck the other players.
Use of this API is restricted to requests coming from services
bound to the A11y service, or root
Bug: 62194333
Test: play a podcast in GPM and "adb shell claf --gain 3 --usage 11 --forceDuck"
Change-Id: I85f26afa14fe233a3b870f86c9084613203494b8
Unhide some compressed audio formats for offloading
or direct output.
Unhide AudioManager method to query whether a given
format can be offloaded on the device.
Unhide AudioTrack.Builder method to request offload.
Unhide callback for new AudioTrack events and
associated methods.
Bug: 63934228
Test: same as MediaPlayer2 tests
Change-Id: If763eb2424baa6aa55cb60e96bb3564c4234e23f
The new API setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent()
is similar to the existing setBluetoothA2dpDeviceConnectionState()
except that it takes one extra argument that indicates whether the
AudioManager.ACTION_AUDIO_BECOMING_NOISY intent will be sent:
setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent(
..., boolean suppressNoisyIntent)
This API is needed so the Active A2DP Sink device can be changed
while audio is streaming, and the audio continues playing on the new
Active Device.
Bug: 69269748
Test: Manual: multiple connected A2DP devices, and selecting each as
the Active Device.
Change-Id: I75766a58d9e6b42b3ce68bd9ad3a7a72ca5a1023
Surface new callbacks from native AudioTrack to
Java through the existing callback method and
post to the Java instance.
New AudioManager method to query whether offload
is supported.
Allow using non-PCM format on a track built for
offload (new option in AudioTrack.Builder)
Numerous "todo" are added for the unhide of the
API additions and will be in a separate patch.
Bug: 63934228
Test: same as MediaPlayer2 tests
Change-Id: I98a81ffffc95c7596a39ee634dcb89bb854f3178
We already make a generic native routing event handler. There is no need
to keep the handler class in MediaRecorder.
Bug: 64038649
Test: runtest --path cts/tests/tests/media/src/android/media/cts/RoutingTest.java
Change-Id: I2d54977a6f990fb549d27aabf52f040bd9da58fa
Since the inherited methods hashCode and equals from the class Object is
already a public API, they don't need to be marked as SystemApi; they
haven't been appear in system-current.txt.
Having annotation on such members hasn't been harmful,
but will soon trigger CTS failures when we do the exact match for
SystemAPIs; a runtime entity annotated as @SystemApi have to exist in
the documented API (e.g. system-current.txt). So, removing the bogus
annotations.
Bug: 67891551
Test: m -j does not require m update-system-api
Change-Id: I40d60ed524d660f47b5c569980c28c6f0bd83db9
This change adds support for priveliged apps with the MODIFY_PHONE_STATE
permission to mute the voice call stream using the adjustStreamVolume method.
The change adds specific handling for VOICE_CALL as a mutable stream.
Bug: 71017199
Fixes: 7107199
Test: Tested manually
Change-Id: Ic6d0466992dcea4f37899eac80a0102c992bdd72
AudioManager: new methods in SDK for querying:
- the minimum volume index
- the volume in dB for a given index on a given device type
Bug: 64844598
Test: cts-tradefed run cts-dev -m CtsMediaTestCases -t android.media.cts.AudioManagerTest
Change-Id: Iac999e7676643272820a4f1f4a32cf3a781ab7cd
MtpStorageManager keeps track of file information and
send notifications for new files. MtpDatabase now uses
this instead of MediaProvider for getting object information,
although some operations are still reflected into MP.
Since MtpStorageManager handles storage ids, remove
that field from StorageVolume and VolumeInfo.
Clean up a lot of the jni code for MtpDatabase.
Bug: 63143623
Test: Test every MtpOperation in a variety of situations on Linux and
Windows. Also use the shell to manipulate files. Verify that the cache
is consistent throughout, and the operations behave as expected. Verify
files created by the shell appear.
Test: adb shell am instrument -w android.mtp /android.support.test.runner.AndroidJUnitRunner
Change-Id: Id4ea810047b0c323399cd833047733e5daafb30a
Motivation of this change:
In CarAudioService, we enumerate the AudioDeviceInfo on device via
AudioManager.getDevices(). The AudioDeviceInfo would be used to
construct the dynamic routing via AudioMix.Builder, which accepts
AudioDeviceInfo.
Meanwhile, we wire also the volume change to hal via
AudioManager.setAudioPortConfig(), which accepts AudioPort.
Bug: 65751827
Test: lunch bat_land-userdebug && m -j
Change-Id: I438cfd61e502340def5376fe373a296ab69ff86e
This CL mirrors changes made to the android.support.annotation version
of IntDef, to keep the usage and semantics identical (though the
internal version of @IntDef and @LongDef are of course hidden and not
part of the SDK.)
Test: These annotations have source retention and therefore have
no runtime impact; the change was compiling the SDK.
Change-Id: Idaf47e8d983c88be1bd8f938615c86611014b45a
Behaves pretty much the same as @IntDef, but now supports "suffix"
in addition to "prefix" when matching constants.
Test: manual docs output looks sane
Bug: 70406696
Change-Id: I35064b0f9f36f1f13ccdb40302d818a004014f15
Added a note to the various getFrame... methods saying that if you
don't need a full-resolution frame, getScaledFrameAtTime() is
preferable. Removed existing text suggesting you use those other
methods for fetching a thumbnail.
Staged revised doc to:
http://go/dac-stage/reference/android/media/MediaMetadataRetriever.html
Bug: 69804003
Test: make ds-docs
Change-Id: I54250b2d127987ef3c1633c011f5eac6b747372e
When emitting a method or field, verify that we're able to reference
all mentioned types. This ensures that we don't accidentally
reference undefined classes/interfaces.
Test: manual inspection of API files
Bug: 69791141
Change-Id: I84e0c87fe83daa118661f61dbdf17b58ea5282d4